Pandas настраивает строки при соединении столбцов

LetzerWille спросил: 12 мая 2018 в 04:04 в: python-3.x

Мне нужно создать объединенный столбец, но не знаю, как настроить строки.
Мне нужно, чтобы имена были отрегулированы правильно. Заполнение не работает.

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 ответа

Есть решение
Wen ответил: 12 мая 2018 в 04:13

Вы по-прежнему можете использовать 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
Scott Boston ответил: 12 мая 2018 в 04:20

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