使用Pandas的不同列的交替元素

2024-04-29 02:44:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个数据帧列,如下所示:

df1 = pd.DataFrame({'A':['CINO','KONO','ROLO','MANE','TUTU']})
df2 = pd.DataFrame({'B':['NION','PONO','RZCO','MPPE','TQAS']})

我的想法是以这样的方式组合数据帧,使输出如下所示:

^{pr2}$

如您所见,列B的项被放置在A列的行之间。 请注意这些行的命名方式,使每对行都有相同的名称。在

你能给我一个聪明的方法来实现这个目标使用一些内置的熊猫功能?在


Tags: 数据dataframe方式pddf1df2nionmane
2条回答

您可以使用:

df = pd.concat([df1.rename(columns={'A':'C'}),
                df2.rename(columns={'B':'C'})], keys=[1,2])
       .sort_index(level=[1,0])
       .reset_index(level=0, drop=True)
df.index = 'CC' + df.index.astype(str)
print (df)
        C
CC0  CINO
CC0  NION
CC1  KONO
CC1  PONO
CC2  ROLO
CC2  RZCO
CC3  MANE
CC3  MPPE
CC4  TUTU
CC4  TQAS
pd.concat(
    [df1, df2], axis=1
).stack().reset_index(1, drop=True).to_frame('C').rename(index='CC{}'.format)

        C
CC0  CINO
CC0  NION
CC1  KONO
CC1  PONO
CC2  ROLO
CC2  RZCO
CC3  MANE
CC3  MPPE
CC4  TUTU
CC4  TQAS

相关问题 更多 >