我需要运行一个可以通过循环完成的任务,但我想有一个更有效和漂亮的方法来做到这一点.我有一个DataFrame
整数列,我想将其转换为4位数字符串表示.也就是说,3应该转换为'0003',234应该转换为'0234'.我正在寻找一个向量操作,它将立即对列中的所有条目执行此操作,快速使用简单的代码.
你可以使用Series.str.zfill()方法:
df['column_name'] = df['column_name'].astype(str).str.zfill(4)
演示:
In [29]: df = pd.DataFrame({'a':[1,2], 'b':[3,234]}) In [30]: df Out[30]: a b 0 1 3 1 2 234 In [31]: df['b'] = df['b'].astype(str).str.zfill(4) In [32]: df Out[32]: a b 0 1 0003 1 2 0234