2024-04-20 09:35:22 发布
网友
我有一个这样的数据框
测向:
col1 col2 col3 1 cat 4 nan dog nan 3 tiger 3 2 lion 9 nan frog nan nan elephant nan
我想从这个数据帧中创建一个数据帧,这个数据帧id col1中有nan个值,col2的值将被添加到前一行的值中
例如,所需的输出数据帧将是:
col1 col2 col3 1 catdog 4 3 tiger 3 2 lionfrogelephant 9
如何使用熊猫来实现这一点
使用正向填充缺失值和聚合join:
join
cols = ['col1','col3'] df[cols] = df[cols].ffill() df = df.groupby(cols)['col2'].apply(''.join).reset_index() print (df) col1 col3 col2 0 1.0 4.0 catdog 1 2.0 9.0 lionfrogelephant 2 3.0 3.0 tiger
或如有必要,向前填充所有列中缺少的值:
df = df.ffill().groupby(['col1','col3'])['col2'].apply(''.join).reset_index() print (df) col1 col3 col2 0 1.0 4.0 catdog 1 2.0 9.0 lionfrogelephant 2 3.0 3.0 tiger
使用正向填充缺失值和聚合
join
:或如有必要,向前填充所有列中缺少的值:
相关问题 更多 >
编程相关推荐