sum()之后在字符串之间添加空格

时间:2017-07-19 11:00:33

标签: python pandas

假设我有以下pandas数据帧:

>>> data = pd.DataFrame({ 'X':['a','b'], 'Y':['c','d'], 'Z':['e','f']})  
   X Y Z
 0 a c e
 1 b d f

所需的输出是:

0    a c e
1    b d f

当我运行以下代码时,我得到:

>>> data.sum(axis=1)
0    ace
1    bdf

那么如何在它们之间添加空格的字符串列呢?

2 个答案:

答案 0 :(得分:4)

axis=1join每行使用apply

a = data.apply(' '.join, axis=1)
print (a)
0    a c e
1    b d f
dtype: object

add空格,sum和最后str.rstrip的另一种解决方案:

a = data.add(' ').sum(axis=1).str.rstrip()
#same as
#a = (data + ' ').sum(axis=1).str.rstrip()
print (a)
0    a c e
1    b d f
dtype: object

答案 1 :(得分:1)

您可以执行以下操作:

data.apply(lambda x:x + ' ').sum(axis=1)

输出结果为:

0    a c e 
1    b d f 
dtype: object