簡體   English   中英

熊貓-如何將數據幀的轉置作為列標題附加到另一個數據幀?

[英]Pandas- How to append a transpose of dataframe to another dataframe as column headers?

我需要將DF1值添加為DF2中的列

數據框1

該DF需要附加

DataFrame2(需要附加操作)

DF1需要作為轉置附加在此數據幀中

所需的DataFrame-DF3 最終輸出數據幀

嘗試使用僅包含標頭的空數據pd.concat 這是一個演示-

df1

          A         B
0 -0.820067 -0.078793
1 -0.341793 -0.301040
2 -0.122264  1.163896
3 -1.693027  0.147647
4 -1.322206  1.839631
5  0.902077  0.334976
6  0.628941 -1.252080
7  0.607116 -0.588056
8  0.564448  0.096036
9 -0.863496  0.345668

df2

  HeaderName
0        XYZ
1        ABC
2        SRT
3        FFF

pd.concat([df1, pd.DataFrame(columns=df2.HeaderName)], 1)

          A         B  XYZ  ABC  SRT  FFF
0 -0.820067 -0.078793  NaN  NaN  NaN  NaN
1 -0.341793 -0.301040  NaN  NaN  NaN  NaN
2 -0.122264  1.163896  NaN  NaN  NaN  NaN
3 -1.693027  0.147647  NaN  NaN  NaN  NaN
4 -1.322206  1.839631  NaN  NaN  NaN  NaN
5  0.902077  0.334976  NaN  NaN  NaN  NaN
6  0.628941 -1.252080  NaN  NaN  NaN  NaN
7  0.607116 -0.588056  NaN  NaN  NaN  NaN
8  0.564448  0.096036  NaN  NaN  NaN  NaN
9 -0.863496  0.345668  NaN  NaN  NaN  NaN

使用DataFrame.join

df2 = df1.join(pd.DataFrame(columns=df2['HeaderName']))

assign

df2 = df1.assign(**pd.Series(index=df2['HeaderName']))

我們可以使用reindex

df1.reindex(columns=list(df1)+df2.HeaderName.tolist())
Out[754]: 
          A         B  XYZ  ABC  SRT  FFF
0 -0.820067 -0.078793  NaN  NaN  NaN  NaN
1 -0.341793 -0.301040  NaN  NaN  NaN  NaN
2 -0.122264  1.163896  NaN  NaN  NaN  NaN
3 -1.693027  0.147647  NaN  NaN  NaN  NaN
4 -1.322206  1.839631  NaN  NaN  NaN  NaN
5  0.902077  0.334976  NaN  NaN  NaN  NaN
6  0.628941 -1.252080  NaN  NaN  NaN  NaN
7  0.607116 -0.588056  NaN  NaN  NaN  NaN
8  0.564448  0.096036  NaN  NaN  NaN  NaN
9 -0.863496  0.345668  NaN  NaN  NaN  NaN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM