如何在导入csv时指定dtype,以便第一列是索引并被解析为日期

时间:2016-02-07 09:38:38

标签: python datetime pandas indexing

我试过了两个:

prices = pd.read_csv("/Users/Joshua/Documents/asx_data/asx_historical_price_data.csv",index_col=0,parse_dates=True)

其中Price.index结束于int数据类型而非datetime index

和...

dtypes = [float, float, float,float,float,float,str,str,str,str] 
prices = pd.read_csv("/Users/Joshua/Documents/asx_data/asx_historical_price_data.csv",index_col=0,dtype=dtypes)

这里我指定了我尝试使用datetime的所有列的数据类型,并为index列指定了datetime.datetime,并省略了col_0的数据类型,因为我已经使用index_col将其设置为索引。

当您希望第一列成为索引并具有datetime数据类型时,为导入csv文件指定数据类型的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

正常使用dtype(如果可以的话,我建议使用字典而不是列表,更不容易出错,请阅读read_csv中的部分)

使用index_col =[0]告诉它使用set“0th”列作为索引,然后使用parse_dates=[0]告诉它将该列解析为日期。

实施例: pd.read_csv('data.csv', dtype={<insert dtypes>}, index_col=[0], parse_dates=[0], infer_datetime_format=True)

注意:遗憾的是read_csv似乎尚未在infer_datetime_format=True中实施,您可以使用app.module.ts

来逃避它

额外注意:评论中format给出了这个答案的95%,所以我建议他回答并接受信用