python - 如何使用 2 个数据框填充表格

标签 python pandas dataframe

我有一个看起来像表格的数据框,如下所示:

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/

相关文章:

python - 为什么我的 pandas DataFrame 列也是 Dataframes,而不是 Series?

python setuptools 和 easy_install numpy

python - 为来自 Pandas 数据框的轨迹数据绘制热图

python - 查找以列表形式存在的列元素的数据帧索引的最快方法

python - 根据条件创建列

python - 使用嵌套循环创建数据框

python - 如何仅对 Pandas 数据框中的某些列进行排序?

python - 如何在 Windows 7 上为 python 2.7 编译和安装 pysqlcipher

python - Meld 在 OSX 10.10 上有错误

python - 何时以及如何在 python 中使用内置函数 property()