簡體   English   中英

將一列中的值替換為另一列 Pandas 的值

[英]Replace the value in a column with the value of another column Pandas

我有一個數據框,其中包含col1col2col3列。 如果col3不為 null,我想用col3的值替換col2 否則,跳過該行。

輸入

col1  col2   col3 
   1     2    nan
   4     5    nan
   6     7      8
   1     0      9

輸出

col1  col2   col3 
   1     2    nan
   4     5    nan
   6     8      8
   1     9      9

這是我的代碼:

for i, row in df.iterrows():
   if row['col3'] != np.nan:
       row['col2'] = row['col3']
   else:
       row['col2'] = row['col2']

但它不起作用。

使用.loc.notna()

df.loc[df['col3'].notna(), 'col2'] = df['col3']

輸出:

>>> df
   col1  col2  col3
0     1   2.0   NaN
1     4   5.0   NaN
2     6   8.0   8.0
3     1   9.0   9.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM