我正在使用 pandas.read_excel()
函数将 excel 文件导入 pandas 数据帧。
其中一列是表格的主键:全是数字,但以文本形式存储(Excel 单元格左上角的绿色小三角形证实了这一点)。
但是,当我将文件导入 pandas 数据框时,该列会作为 float 导入。这意味着,例如,“0614”变为 614。
有没有办法在导入列时指定数据类型?我知道在导入 CSV 文件时这是可能的,但在 read_excel()
的语法中找不到任何内容。
我能想到的唯一解决方案是在 Excel 中的文本开头添加一个任意字母(将“0614”转换为“A0614”),以确保将列作为文本导入,然后将python中的'A',所以我可以将它与我从SQL导入的其他表相匹配。
最佳答案
您只需指定转换器。我创建了以下结构的 excel 电子表格:
names ages
bob 05
tom 4
suzy 3
“年龄”列被格式化为字符串。加载:
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
关于Python Pandas : how to specify data types when reading an Excel file?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32591466/