首页 > 解决方案 > 加入熊猫行与列

问题描述

我有这个行数据框:

df = pd.DataFrame({'make':'toyota', 'model':'yaris'}, index=[0])
df

    make    model
0   toyota  yaris

并拥有其他列数据框:

df_prices = pd.DataFrame({'prices':[1,2,3,4]})
df_prices

    prices
0   1
1   2
2   3
3   4

我想加入他们以获得:

    make    model   prices
0   toyota  yaris   1
1   toyota  yaris   2
2   toyota  yaris   3
3   toyota  yaris   4

标签: pythonpandas

解决方案


尝试:

df=df_prices.join(df).ffill()
print(df)

   prices    make  model
0       1  toyota  yaris
1       2  toyota  yaris
2       3  toyota  yaris
3       4  toyota  yaris

如果关心列:

df=df[['make','model','prices']]
print(df)

     make  model  prices
0  toyota  yaris       1
1  toyota  yaris       2
2  toyota  yaris       3
3  toyota  yaris       4

join+ ffill!!!

更新(感谢@larsr 的评论):

df=df.join(df_prices, how='outer').ffill()
print(df)

会这样做,并修复列顺序。


推荐阅读