我正在清理数据集并希望标记所有错误输入的值。例如,如果一行有A类和空子类,我想标记它。
Dataframe df:
Category | Subcategory | Value
A aa 3635
A 45654
B bb 3454
C cc 3674
C 4575
我试过了:
df['Format_Flag'] = ' '
df['Format_Flag'][(df['Category'] == 'A') & (df['Subcategory'] == ' ')] = 'Y'
但它没有标记任何内容。
这就是我得到的:
Category | Subcategory | Value | Format Flag
A aa 3635
A 45654
B bb 3454
C cc 3674
C 4575
这就是我要找的:
Category | Subcategory | Value | Format Flag
A aa 3635
A 45654 Y
B bb 3454
C cc 3674
C 4575
答案 0 :(得分:2)
使用np.where
df['Format_Flag'] = np.where((df['Category'] == 'A') & (df['Subcategory'] == ' '), 'Y', ' N')
答案 1 :(得分:1)
df.loc[(df_final['Category'] == 'A') & (df_final['Subcategory'] == ' '),'Format_Flag'] = 'Y'
df = df.fillna('')