python - 如何在熊猫中使用索引连接两个数据框?
问题描述
我有以下数据框 df1
value
0 0.164560
1 0.000000
2 0.350000
3 0.700000
...
3778 0.350000
3779 0.000000
3780 0.137500
3781 0.253333
和另一个数据框 df2
0 1
2669 1.744478e-05 2.323815e-05
5417 2.274561e-06 5.808474e-04
6102 2.220705e-06 1.605110e-04
4033 2.018643e-04 2.867235e-05
4877 4.549740e-07 6.233500e-04
...
4470 2.761791e-06 6.504309e-05
5071 1.261781e-06 8.010408e-05
3635 4.810822e-05 3.325764e-05
5378 1.133819e-04 4.934986e-05
通过加入两个数据帧,我希望 df2 中的索引成为加入数据帧中的 id 列,方法是从 df2 中删除第 0 列和第 1 列。所以所需的输出看起来像
id value
2669 0.164560
5417 0.000000
6102 0.350000
4033 0.700000
...
4470 0.350000
5071 0.000000
3635 0.137500
5378 0.253333
我试过
df3 = pd.concat([df2, df1], ignore_index=True)
使用 pd.concat 连接数据帧的输出
value 0 1
0 0.164560 NaN NaN
1 0.000000 NaN NaN
2 0.350000 NaN NaN
3 0.700000 NaN NaN
....
7382 NaN 4.165176e-05 2.615312e-05
7383 NaN 2.357132e-05 5.779454e-05
7384 NaN 1.761602e-06 7.960426e-05
7385 NaN 9.162049e-11 1.627316e-04
解决方案
如果两个 DataFrame 的长度相同,则只为新列分配一个索引:
df1['id'] = df2.index
print (df1)
或者:
df1 = df1.assign(id = df2.index)
print (df1)
推荐阅读
- c# - 不和谐用户登录
- angular - 升级后Auth Lib接口改变了吗?
- react-native - 错误:没有为给定的视图控制器注册本机闪屏。用于使用 expo-splash-screen 的 react-native expo
- amcharts - 如何更改 amCharts 地图中 MapPolygonSeries 或 Polygon 的大小?
- python - 如何从 Python 调用 XInitThreads
- angular - 为什么不在本地主机上时没有设置 cookie?
- concatenation - 如何在 Wikidata 的 SPARQL 查询中反转连接值的顺序?
- typescript - 具有公共库的多个 VueJS TypeScript 项目
- python - 有没有办法从数据框中的字段中提取地点类型或站点类型?
- wordpress - 我的 https 不起作用,只显示平面单词