首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我们如何使用python中的合并来处理使用熊猫的多个数据帧。

我们如何使用python中的合并来处理使用熊猫的多个数据帧。
EN

Stack Overflow用户
提问于 2019-06-30 13:20:03
回答 3查看 1.6K关注 0票数 2

如何使用多个数据帧的合并。

columns_List = Emp_Id, Emp_Name, Dept_Id...

我在python脚本中使用了两个数据框架。df1[Columns_List]df2[columns_List].在这两个数据文件中,我都使用了相同的列,但在这两个数据格式中,我的值将不同。

我如何使用合并,这样就可以说:在Dataframe df1[Columns_List]中--我有Emp_Name null,然后我想从df2[Columns_list]中选择Emp_Name

我正在尝试创建一个输出CSV文件。

如果我的问题是错误的,请原谅。

请查找下面的样本数据。

给Dataframe1 -- df1Columns_List ..。请查找以下输出

代码语言:javascript
运行
复制
EmpID,Emp_Name,Dept_id,DeptName
1,,1,
2,,2,

给Dataframe2 -- df2Columns_List ..。请查找以下输出

代码语言:javascript
运行
复制
EmpID,Emp_Name,Dept_id,DeptName
1,XXXXX,1,Sciece
2,YYYYY,2,Maths

我有消息来源作为Json文件。一旦我通过python解析了数据,我就会在同一个脚本中使用2个dataframes。在数据帧1( df1)中,我使用Emp_Name & Dept_Name作为null。在这种情况下,我想从Dataframe2 (df2)中选择数据。

在上面的例子中,我提供了几个列。但我可能有很多列。但是列的顺序和列名总是一样的。我试图以这样的方式实现,如果来自df1的任何列为null,那么我想从df2中选择值。

这有可能吗..。请帮我解决任何建议..。

EN

Stack Overflow用户

发布于 2019-06-30 15:24:39

我复制了你的数据文件:

代码语言:javascript
运行
复制
# df1
    EmpID   Emp_Name    Dept_id DeptName
0   1       1   
1   2       2   

# df2
    EmpID   Emp_Name    Dept_id DeptName
0   1   XXXXX   1   Sciece
1   2   YYYYY   2   Maths
  1. 如果要将df1列中的缺失值(NaN)替换为df2列中的现有值,则可以使用.fillna()。例如:
代码语言:javascript
运行
复制
df1['Emp_Name'].fillna(df2['Emp_Name'], inplace=True)
代码语言:javascript
运行
复制
# df1

    EmpID   Emp_Name    Dept_id DeptName
0   1   XXXXX   1   
1   2   YYYYY   2   
  1. 如果要将给定列的所有值替换为来自另一个dataframe的同一列的值,则可以使用列表理解。
代码语言:javascript
运行
复制
df1['DeptName'] = [ each for each in list(df2['DeptName'])]
代码语言:javascript
运行
复制
    EmpID   Emp_Name    Dept_id DeptName
0   1   XXXXX   1   Sciece
1   2   YYYYY   2   Maths

我相信有更好的方法来做这件事,但我希望这会有帮助!

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56825147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档