我有一個資料集如下
ID A1 A2
0 A123 1234
1 1234 5568
2 5568 NaN
3 Zabc NaN
4 3456 3456
5 3456 3456
6 NaN NaN
7 NaN NaN
意圖是遍歷每一列(A1 和 A2),確定兩列在第 6 行和第 7 行中的空白位置,創建一個新列并將其分類為“A1 和 A2 均為空白”
我使用了下面的代碼,
df['Z_Tax No Not Mapped'] = np.NaN
df['Z_Tax No Not Mapped'] = np.where((df['A1'] == np.NaN) & (df['A2'] == np.NaN), 1, 0)
但是,輸出將新列“Z_Tax No Not Mapped”下的所有行都捕獲為 0,但資料具有兩列均為空白的實體。不知道我在哪里犯了過濾這種情況的錯誤。
注意:A1 和 A2 列有時是字母數字或只是數字
想法是將類別放在單獨的列中作為“ID 未更新”或“ID 已更新”,以便通過在“ID 未更新”上放置一個簡單的過濾器,我們可以識別兩列中為空白的案例
幫助將不勝感激。
uj5u.com熱心網友回復:
利用:
df['Z_Tax No Not Mapped'] = np.where(df[['A1','A2']].isna().all(axis=1),
'Both A1 and A2 are blank',
'')
uj5u.com熱心網友回復:
df.loc[df.isna().all(axis=1), "Z_Tax No Not Mapped"] = "Both A1 and A2 are blank"
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/484295.html
標籤:python-3.x 熊猫 数据框 麻木的 类别
上一篇:將值傳遞到例外字串訊息中
