python - 合并/连接/加入两个数据框
问题描述
我有一个带有不同代码标识符的熊猫数据框,如下所述:
df1 = pd.DataFrame([['a', 1], ['b', 2],['c', 3],['d', 4],['e', 5],['f', 5]],
columns=['code', 'value1'])
第二个数据框具有以下内容
df2 = pd.DataFrame([['a', 11], ['b', 12],['c', 13],['d', 14],['e', 15],['f', 16],['g', 17], ['h', 2],['i', 3],['j', 4],['k', 5],['l', 5]],
columns=['code', 'value2'])
我只想查看 df1(即 af)中标识的代码,并有一个名为 value2 的第三列。
我试过了
df1 = df1.join(df2, on = '代码')
但我不断得到 NaN 的值
我查看了几个地方并看到了合并、连接和连接,但它们似乎都不起作用
解决方案
采用:
>>> df1.merge(df2, how='inner', on='code')
code value1 value2
0 a 1 11
1 b 2 12
2 c 3 13
3 d 4 14
4 e 5 15
5 f 5 16
或者你的意思是 withhow='outer'
和merge
?
>>> df1.merge(df2, how='outer', on='code')
code value1 value2
0 a 1.0 11
1 b 2.0 12
2 c 3.0 13
3 d 4.0 14
4 e 5.0 15
5 f 5.0 16
6 g NaN 17
7 h NaN 2
8 i NaN 3
9 j NaN 4
10 k NaN 5
11 l NaN 5
>>>
推荐阅读
- android - 为 Android 开发电视遥控器应用程序的步骤是什么?
- java - 向用户请求“WRITE_EXTERNAL_STORAGE”权限。安卓, JAVA
- c - c中getchar()的问题
- angular - 如何在 Nebular UI 中更改主题变量值?
- python - 尝试使用 While 循环创建列表列表,并附加一个使用输入清除和更新的列表。不工作。怎么修?
- php - 使用多个表创建搜索功能
- java - GAE 部署错误(需要多次部署我的应用程序才能工作)
- python - Discord.py 阅读列表
- c# - 解析具有日期格式的 JSON 文件并添加到列表
- javascript - 如何将对象内的特定项目分组到同一数组中并将它们从核心数组中删除?