我希望在数据框中添加几列。
让我说我从这开始:
import pandas as pd
dfX = pd.DataFrame({'A': [1,2,3,4],'B': [5,6,7,8],'C': [9,10,11,12]})
dfY = pd.DataFrame({'D': [13,14,15,16],'E': [17,18,19,20],'F': [21,22,23,24]})
我可以通过以列表形式定义新列来将dfY
列附加到dfX
:
dfX[[3,4]] = dfY.iloc[:,1:3].copy()
...但我宁愿这样做:
dfX.iloc[:,3:4] = dfY.iloc[:,1:3].copy()
前者的作品!后者执行,不返回任何错误,但不会改变dfX
。
答案 0 :(得分:1)
您在寻找
吗?dfX = pd.concat([dfX, dfY], axis = 1)
返回
A B C D E F
0 1 5 9 13 17 21
1 2 6 10 14 18 22
2 3 7 11 15 19 23
3 4 8 12 16 20 24
你可以在这里添加几个数据帧,如pd.concat([dfX,dfY,dfZ],axis = 1)
如果你需要追加dfY中的D和E列到dfX,请选择
pd.concat([dfX, dfY[['D', 'E']]], axis = 1)