我有一个excel文件,我读入了一个数据帧。我想将此df输出到CSV文件。但是CSV文件中的一列(标记为id
)是整数,如1,但是想要输出带有前导零的“0001”字符串。
每次我尝试输出文件时,它都会将此列解释为整数并删除前导零。我需要所有前导零。
我试过
import pandas as pd
df = pd.read_excel(<path&filenane>,convertors={"id":object})
df.to_csv(<path&filename>)
CSV文件我想看
id,name,birthday
0001,smith,1980/01/01
dtypes =object,object,object
但现在
id,name,birthday
1,smith,1980/01/01
dtypes=int,object,object
答案 0 :(得分:0)
您可以使用converters
参数控制输入列的类型和格式。以下示例完成了您之后的操作。
filename
代替StringIO(txt)
import pandas as pd
from io import StringIO
txt = """id,name,birthday
0001,smith,1980/01/01
"""
df = pd.read_csv(StringIO(txt), converters=dict(id=str))
df
id name birthday
0 0001 smith 1980/01/01