gpt4 book ai didi

python - Pandas.read_csv(,parse_dates,) 强制将一列 float 据变成字符串

转载 作者:行者123 更新时间:2023-12-04 04:06:49 27 4
gpt4 key购买 nike

我试图读取一个 csv 文件

Test.csv

使用

df = pd.read_csv('Test.csv',index_col=0,parse_dates=[0],header=None,names=['Open','Close','High','Low','Vol','Mon'])
df['Open']

但由于未知原因,“打开”列的结果是一个字符串数据列表。其他栏如“高”“低”都很好,只是“开盘价”是错误的。所以我尝试在最后添加 dtype=float

1

'Open' 的数据仍然是字符串。我发现这是 parse_dates 的问题,因为没有它也没关系。

without parse_dates

但我仍然需要将日期的类型设置为 datetime64,所以我必须这样做

df = pd.read_csv('Test.csv',index_col=[0],header=None,names=['Open','Close','High','Low','Vol','Mon'])
df.index = pd.to_datetime(df.index)
df['Open']

把事情做好。但我想知道是什么原因造成的?这对我来说似乎是一个错误。所以我把它贴出来看看有没有人遇到过同样的问题。

最佳答案

也许使用来自 pandas docsdf = pd.read_csv('Test.csv',infer_date_format=True,...) .此外,在 dtype 选项下的同一部分中,您似乎可以传递转换器函数,因此也可以尝试:

df = pd.read_csv('Test.csv', dtype={'Open': pd.to_datetime},...)`

不确定根本原因,如果没有将文本粘贴到 bpaste.net 之类的地方,我无法对其进行测试。

关于python - Pandas.read_csv(,parse_dates,) 强制将一列 float 据变成字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62337676/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com