2017-01-05 6 views
3

左にdfの各行を埋め込み、行の合計が30文字になるようにするにはどうすればよいでしょうか?パンダのデータフレームの各行の先頭にダイナミックな空白を追加するにはどうすればよいですか?

私はこの道を下って行くしようとしたが、それが機能しなかったと私はljustは廃止されて信じている:

現在
'{: <30}'.format(df['test1']) 

私が探している何
>>> df['test1'] 
0 1234jjjjjjjdddd 
1 1234jjjjjjjdd 
2 1234jjjjjjjddddddddd 
3 1234jjjjjjjddd 
4 1234jjjjjjjdddddd 

>>> df['test1'] 
0     1234jjjjjjjdddd 
1      1234jjjjjjjdd 
2    1234jjjjjjjddddddddd 
3     1234jjjjjjjddd 
4     1234jjjjjjjdddddd 

最終解決:

df['test1'] = df.test1.str.rjust(30,' ') 

答えて

3

私はあなたがstr.rjustを使用することができると思う:

print (df.test1.str.rjust(30, ' ')) 
0     1234jjjjjjjdddd 
1      1234jjjjjjjdd 
2    1234jjjjjjjddddddddd 
3     1234jjjjjjjddd 
4     1234jjjjjjjdddddd 
Name: test1, dtype: object 
+0

パーフェクト!これはまさに私が探していたものです!ありがとうございました! – Mike

0

これは動作するはずです:

spaces = " " * 30 
df['test1'] = [spaces[-len(i):] + i for i in df['test1']] 
関連する問題