pandas在连接列时调整字符串

时间:2018-06-05 17:44:16

标签: python-3.x pandas

我需要创建一个连接列,但不知道如何调整 字符串。
我需要正确调整名称。填充不起作用。

df = pd.DataFrame({"Family":['Antares','Delta','Atlas','Falcon'],
                    "Launches":[1,1,4,11]})

df['Family'] =  df['Family']  + '   ' + df['Launches'].astype(str)  

        Family  Launches        
0  Antares   1         1        
1    Delta   1         1      
2    Atlas   4         4      
3  Falcon   11        11  

I want the output to look like this   

        Family  Launches        
0 Antares    1         1        
1   Delta    1         1      
2   Atlas    4         4      
3  Falcon   11        11      

2 个答案:

答案 0 :(得分:2)

您仍然可以使用pad

df.Family.str.pad(df.Family.str.len().max(),side = 'left',fillchar = ' ')+ '   ' + df['Launches'].astype(str).str.pad(df['Launches'].astype(str).str.len().max(),side = 'left',fillchar = ' ')

Out[474]: 
0    Antares    1
1      Delta    1
2      Atlas    4
3     Falcon   11
dtype: object

答案 1 :(得分:2)

IIUC,使用.str.rjust

df['Family'] = (df['Family'] + ' ' + 
               df['Launches'].astype(str).str
                             .rjust(df['Launches'].astype(str)
                                                  .str.len().max(),' '))

输出:

0    Antares  1
1      Delta  1
2      Atlas  4
3     Falcon 11
dtype: object