2014-05-23 4 views
14

ich einen Pandas Datenrahmen haben, wo die ersten 3 Spalten Strings sind:hinzufügen Zeros zu Strings in Pandas Dataframe Führende

   ID text1 text 2 
0 000000002345656  blah  blah 
1 000000000003456  blah  blah 
2 000000000541304  blah  blah   
3 000000000201306  hi  blah   
4 000hello  blah 

I:

  ID  text1 text 2 
0  2345656  blah  blah 
1   3456  blah  blah 
2  541304  blah  blah   
3  201306  hi  blah   
4 12313201308 hello  blah   

I führende Nullen auf die ID hinzufügen möchten haben versucht:

df['ID'] = df.ID.zfill(15)) 
df['ID'] = '{0:0>15}'.format(df['ID'] 

Antwort

24

Versuchen:

df['ID'] = df['ID'].apply(lambda x: '{0:0>15}'.format(x)) 

oder sogar

df['ID'] = df['ID'].apply(lambda x: x.zfill(15)) 
+4

Keine Notwendigkeit für den 'lambda' auf dem ersten:' gilt ('{0> 15}'. Format) 'sollten auch funktionieren. – DSM

+0

@DSM Schön. Wusste ich nicht. – Rohit