为了账号安全,请及时绑定邮箱和手机立即绑定

如何有效地将一个DF的多列附加到另一个DF的一列中

如何有效地将一个DF的多列附加到另一个DF的一列中

慕尼黑的夜晚无繁华 2022-06-07 17:55:58
我正在寻找一种有效的方法来将一个 Dataframe 的多列放入另一个 Dataframe 的一列。我设法通过获取原始 DF 的列名、获取每列的系列并将这些列一个接一个地附加到一个空列表来做到这一点。column_names = []column_names.append(df.columns.values.tolist())for col in df[column_names[0]]:        for element in series:            H_list.append(element)df_new =pd.DataFrame({"NewColumn": column_names})这感觉真的很无效,我敢打赌有一种更蟒蛇的方式来做到这一点。
查看完整描述

1 回答

?
慕仙森

TA贡献1827条经验 获得超8个赞

您可以将DataFrame.stack与DataFrame.Transpose一起使用:


这是一个例子:


import pandas as pd

df=pd.DataFrame()

df['col1']=[1,2,3,4,5,6]

df['col2']=[7,8,9,10,11,12]

print(df)


   col1  col2

0     1     7

1     2     8

2     3     9

3     4     10

4     5     11

5     6     12

df2=pd.DataFrame()

df2['col1']=[11,12,13,14,15,16,11,12,13,14,15,16]

print(df2)



    col1

0     11

1     12

2     13

3     14

4     15

5     16

6     11

7     12

8     13

9     14

10    15

11    16

my_stack_df=df.T.stack().reset_index(drop=True)

df2['col2']=my_stack_df

print(df2)




    col1  col2

0     11     1

1     12     2

2     13     3

3     14     4

4     15     5

5     16     6

6     11     7

7     12     8

8     13     9

9     14     10

10    15     11

11    16     12


查看完整回答
反对 回复 2022-06-07
  • 1 回答
  • 0 关注
  • 156 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信