我有一个看起来像表格的数据框,如下所示:
1. DueDate | item1 | item2 | item3 | item4
2. 1/1/2018 | nan | nan | nan | nan
3. 1/2/2018 | nan | nan | nan | nan
4. 1/3/2018 | nan | nan | nan | nan
5. 1/4/2018 | nan | nan | nan | nan
6. 1/5/2018 | nan | nan | nan | nan
我有另一个数据框,如下表所示:
1. DueDate | items
2. 1/1/2018 | item1
3. 1/2/2018 | item3
4. 1/2/2018 | item4
5. 1/4/2018 | item4
6. 1/5/2018 | item1
7. 1/5/2018 | item3
我想在第一个表中填写匹配的日期和项目,如下所示:
1. DueDate | item1 | item2 | item3 | item4
2. 1/1/2018 | YES | nan | nan | nan
3. 1/2/2018 | nan | nan | YES | YES
4. 1/3/2018 | nan | nan | nan | nan
5. 1/4/2018 | nan | nan | nan | YES
6. 1/5/2018 | YES | nan | YES | nan
我该如何去做呢,我尝试了很多方法,但我很不幸。 先感谢您!
最佳答案
您可以使用下面的get_dummies
来分配给df1
:
df1[df2['items'].str.get_dummies().columns]=df2['items'].str.get_dummies().replace(1,'YES').replace(0,pd.np.nan)
现在:
print(df1)
是:
DueDate item1 item2 item3 item4
0 1/1/2018 YES NaN NaN NaN
1 1/2/2018 NaN NaN YES NaN
2 1/3/2018 NaN NaN NaN YES
3 1/4/2018 NaN NaN NaN YES
4 1/5/2018 YES NaN NaN NaN
关于python - 如何使用 2 个数据框填充表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53952713/