我有一个带有整数列的pandas数据帧,名为TDLINX。我正在尝试将其转换为带有前导零的字符串,以便所有值都是7个字符,前导零。所以7会变成“0000007”
这是我使用的代码:
df_merged_total['TDLINX2'] = df.TDLINX.apply(lambda x: str(x).zfill(7))
乍一看,这似乎有效,但随着我进一步向下,我意识到TDLINX2中的值开始变化。可能导致这种情况的原因以及我该怎样做才能阻止它?
答案 0 :(得分:2)
你可以这样做:
>>> df = pd.DataFrame({"col":[1, 33, 555, 7777]})
>>> df["new_col"] = ["%07d" % x for x in df.col]
>>> df
col new_col
0 1 0000001
1 33 0000033
2 555 0000555
3 7777 0007777