的操作類似於MYSQL操作:如何用python數據框中的其他值替換空值單元格?
UPDATE a.tract_201704 SET val_2000=0.91516427*val_2001 WHERE val_2001 IS NOT NULL AND val_2000 IS NULL.
我有很多列的DF,其中有一個名爲列val_2000,如果包含空值,那麼我想0.91516427替換該值* val_2001(與下一個單元格的標量相乘)。
到目前爲止的代碼:(val_2000有100或無)
df = pd.read_csv("singleDataFile_header.csv")
df_val2001_null = (df[df['val_2000'] != '100.000000000000']['val_2001'])
df_val2000_null = (df[df['val_2000'] != '100.000000000000']['val_2000'])
df_val2000_null = 0.91516427*df_val2001_null
但如何只要有在DF [val_2000]是無值把這個值從df_val2000_null回到原來的DF?
df ['val_2000']。update(0.91516427 * df ['val_2001'])是否可以使用where子句進行更新? – Viv
它不工作,更好的是combine_first。 – jezrael
combine_first只有在存在NULL/NONE值時纔會編輯val_2000嗎? – Viv