我正在阅读包含混合数据类型的列的csv文件。我不知道该怎么做。
首先,这是我正在使用的数据:https://www.kaggle.com/epa/fuel-economy/data
现在我正在阅读该文件:
data = pd.read_csv('data/database.csv', sep=',')
这是我收到的错误消息:
DtypeWarning: Columns (7,16,62,64,65,67,68,78) have mixed types. Specify dtype option on import or set low_memory=False.
interactivity=interactivity, compiler=compiler, result=result)
现在我想知道该怎么做。
我可以添加low_memory=False
或使用read_csv
方法设置这些列的数据类型。我的问题是,我不确定我应该将它设置为什么类型,因为该数据集非常庞大,我无法确定哪种数据类型最适合每列。
有人可以帮我解决我的问题吗?
答案 0 :(得分:0)
要获得数据类型的打印输出,我执行了以下操作:
创建数据集的可迭代
将变量分配给第一个chunksize
df_chunks = pd.read_csv('database.csv', sep=',', chunksize=5)
df1 = next(df_chunks) # df1 is a dataframe of the first 5 rows
获取第一行的数据类型:
for i, t in enumerate(df1.iloc[0]):
print(type(t))
(由于打印输出很长,您可以附加到列表或创建一个字典,其中包含列名称和值的类型以便于查找)
或:
df1.info()
希望这有帮助!