问题
比如这样的一个dataframe
names ages
bob 05
tom 4
suzy 3
如果直接读取,那么ages会是数字类型,bob的05年龄会变成5
怎样让05一直是05,保持不变,就是说是个字符串呢
解决
import pandas as pd
df = pd.read_excel('Book1.xlsx', sheetname='Sheet1', header=0, converters={'names':str,'ages':str})
>>> df
names ages
0 bob 05
1 tom 4
2 suzy 3
答案就是这个参数:
converters={'names':str,'ages':str}
其中names和ages是excel中的列名,把他们设置成str,那么读取时就是字符串了
日期列处理
如果读取u的是日期列,想要做日期列的解析,则这样指定
df = pd.read_excel(xlsx, dtype={'column_name': datetime.datetime})
来自文章:
https://stackoverflow.com/questions/42958217/pandas-read-excel-datetime-converter