1. df.loc[df[column1]=='A',['column2']]='B

    如果 column1 符合 A 或 B 条件,对应的’plus’列删除的前 7 个字段

    1. //方法一 'and = &' , 'or = |' , ' not = ~'
    2. df[new_column]= df['plus'].map(lambda x: str(x)[7:])
    3. df[column]=np.where((df[column1] == 'A')|(df1[column2] == 'B'),df[new_column], df[old_column])
    1. //方法二
    2. df[column]=df.apply (lambda x: x.plus[7:] if (df[column1] == 'A')|(df1[column2] == 'B') else x.column, axis=1)

    方法二也可以可以应用于 01 编码

    1. //01验证
    2. df['01验证'] = df.apply(lambda x:1 if x == A else 0)

    这个时候就运用 if elif

    1. def label(df):
    2. if df[column] == A:
    3. return df['A']
    4. elif df[column] == B:
    5. return df['B']
    6. elif df[column] == C:
    7. return df['C']
    8. elif df[column] == D:
    9. return df['D']
    10. else:
    11. return 0
    12. df['column']=df.apply(label,axis=1)

    直接使用表联接 类似于 EXCEL 的 VLOOKUP 功能
    df1:

    辅助列 对应值
    中芯国际 ¥56
    兆易创新 ¥300
    北方华创 ¥370
    五粮液 ¥200
    宁德时代 ¥500

    df0:

    行业 辅助列
    芯片 中芯国际
    芯片 兆易创新
    芯片 北方华创
    饮料 五粮液
    电池 宁德时代
    1. #读取辅助表
    2. df1 = pd.read_excel('辅助.xlsx',header=0)
    3. df = pd.merge(df0,df1[:,['辅助列','对应值']],how='left',on = '辅助列')

    df:

    行业 辅助列 对应值
    芯片 中芯国际 ¥56
    芯片 兆易创新 ¥300
    芯片 北方华创 ¥370
    饮料 五粮液 ¥200
    电池 宁德时代 ¥500

    以上是针对列值修改积累的一些方法,希望可以帮助到大家,有未涉及到的地方可以留言补充,谢谢!
    https://blog.csdn.net/weixin_44363807/article/details/119147370
    https://blog.csdn.net/weixin_44363807/article/details/119147370