我有一个像这样的数据集
Ticket Cabin
123 Nan
162 B14
123 C12
122 D13
162 Nan
122 Nan
所以我想根据票证值(例如结果为)填充Nan值
Ticket Cabin
123 C12
162 B14
123 C12
122 D13
162 B14
122 D13
有什么功能或方法可以做到这一点吗?
答案 0 :(得分:1)
创建票证到非空机舱值的映射,然后使用它来回填其他行:
df['Cabin_Filled'] = df['Ticket'].map(df.groupby('Ticket')['Cabin'].first())
df
Ticket Cabin Cabin_Filled
0 123 NaN C12
1 162 B14 B14
2 123 C12 C12
3 122 D13 D13
4 162 NaN B14
5 122 NaN D13