我正在使用pandas并且有一个数据框,我想将两个行合并在一起,并将每个单元格中的值附加到符号之间。单元格包含文本或整数。
原始数据框如下所示
index 1 2 3
0 2010 2011 2012
1 First Second Third
2 98% 99% 99%
3 77% 87% 77%
我想实现这个目标:
index 1 2 3
0 2010 | First 2011 | Second 2012 | Third
2 98% 99% 99%
3 77% 87% 77%
实现这一目标的最佳途径是什么?
答案 0 :(得分:3)
我们试试这个:
df.loc[0] = df[:2].apply(lambda x: ' | '.join(x.astype(str)))
df = df.drop(1).reset_index()
df
输出:
index 1 2 3
0 0 2010 | First 2011 | Second 2012 | Third
1 2 98% 99% 99%
2 3 77% 87% 77%
答案 1 :(得分:0)
或许您可以使用T
df=df.T
df[0]=df[0].astype(str)+'|'+df[1]
df.drop(1,1).T
1 2 3
index
0 2010|First 2011|Second 2012|Third
2 98% 99% 99%
3 77% 87% 77%