python - 在占 nan 的特定列上加入 2 个 Pandas 数据框
问题描述
我有 2 个 pandas DataFramesdfA
和dfB
X 和 Y 列和行。
我需要追加dfB
,dfA
创建dfC
。我需要将附加内容放在列名在dfA
和中的列上dfB
。
此外,如果 in 中的列名dfA
未出现在 中dfB
,dfC
则应包含 Nan 值。
为了简化,
dfA
好像,
c1 c2 c3
0 AX1 AX2 AX3
1 AY1 AY2 AY3
2 AZ1 AZ2 AZ3
虽然dfB
看起来像,
c1 c2 c4
0 BX1 BX2 BX3
1 BY1 BY2 BY3
2 BZ1 BZ2 BZ3
这样dfC
应该看起来像,
c1 c2 c3
0 AX1 AX2 AX3
1 AY1 AY2 AY3
2 AZ1 AZ2 AZ3
3 BX1 BX2 Nan
4 BY1 BY2 Nan
5 BZ1 BZ2 Nan
我该怎么做呢?
解决方案
尝试这个,
pd.concat([dfA,dfB[['c1','c2']]])
避免硬编码列
尝试这个,
inter=list(set(dfA.columns)&set(dfB.columns))
print pd.concat([dfA,dfB[inter]])
推荐阅读
- django - Django Admin Inline FileField 链接在新选项卡中打开
- sql-server - 我们如何更改 SQL Server 中的 msdb 值?
- casting - Kotlin 的铸造成本有多高?
- angular - Angular 5 - 在 Jasmine / Karma 测试中使用 HTTP 拦截器作为模拟 HTTP 请求
- file - 基于某些特定字符串的出现在 Unix 中拆分文件
- ms-access - Access 2016 通过 VBA 处理重复邮件到 Outlook
- postman - BIM 360 Field Forge - 检索容器 ID
- node.js - 反应组件未加载?
- javascript - 在javascript中读取数组
- c# - 尝试使用 SpeechSynthesizer 和 NAudio 但进程无法访问该文件