用值分组两列以获得第三列

时间:2019-05-21 16:54:16

标签: python

您会发现两列Name和N-对于大多数条目,name和N都是相同的

但是在某些情况下,当存在Name时会丢失N,反之亦然

对列进行分组,以使k I具有一个包含所有值的结果列

示例:

Col1 Col2 value.... 

Adam   nan   334

John    nan   56

nan    Michael  90

结果:

Col1 value.... 

Adam   334

John    56

Michael  90

1 个答案:

答案 0 :(得分:1)

尝试:

for index, row in df.iterrows() :
  if not isinstance(df['col1'][index],str) : 
    df['col1'][index] = df['col2'][index]

知道nan是一个浮点数,如果它发现'col1'的值是nan,它将取'col2'的值

或使用Apply

df['B'] = df.apply(lambda x : x['C'] if not isinstance(x['B'],str) else x['B'] ,axis= 1)

new_df = df.delete('C',axis=1)