我有一个如下数据集
Ticket Cabin123 Nan162 B14123 C12122 D13162 Nan122 Nan
所以我想根据 Ticket 值填充 NaN 值,使结果如下
Ticket Cabin123 C12162 B14123 C12122 D13162 B14122 D13
有没有什么函数或方法可以实现这一点?
回答:
创建一个从票号到非空舱位值的映射,然后用它来回填其他行:
df['Cabin_Filled'] = df['Ticket'].map(df.groupby('Ticket')['Cabin'].first())df Ticket Cabin Cabin_Filled0 123 NaN C121 162 B14 B142 123 C12 C123 122 D13 D134 162 NaN B145 122 NaN D13