Pandas DataFrame - #39;cannot astype a datetimelike from [datetime64[ns]] to [float64]#39; when using ols/linear regression(Pandas DataFrame - 不能在使用 ols/线性回归时从 [datetime64[ns]] 到 [float64] 键入 datetimelike)
问题描述
我有一个如下的DataFrame:
I have a DataFrame as follows:
Ticker Date Close
0 ADBE 2016-02-16 78.88
1 ADBE 2016-02-17 81.85
2 ADBE 2016-02-18 80.53
3 ADBE 2016-02-19 80.87
4 ADBE 2016-02-22 83.80
5 ADBE 2016-02-23 83.07
...等等.Date 列是问题所在.我正在尝试使用 Close 列获得 Date 列的线性回归:
...and so on. The Date column is the issue. I'm trying to get the linear regression of the Date column with the Close column:
ols1 = pd.ols(y=ADBE['Close'], x=ADBE['Date'], intercept=True)
我收到以下错误:
TypeError: cannot astype a datetimelike from [datetime64[ns]] to [float64]
我尝试了多种方法来消除此错误,例如:
I've tried multiple ways of getting rid of this error, for examples:
dates_input = ADBE['Date'].values.astype('datetime64[D]')
dates_input = ADBE['Date'].values.astype('float')
第二次 dates_input 尝试将类型返回为 pandas.core.series.Series 但我仍然收到错误消息.
The second dates_input attempt returns the type as pandas.core.series.Series but I still get an error message.
有谁知道如何让 Date 列正常工作并摆脱这个 TypeError?
Does anyone know how to get the Date column to work and get rid of this TypeError?
推荐答案
你需要:
ADBE['Date'] = ADBE['Date'].values.astype(float)
然后:
ols1 = pd.ols(y=ADBE['Close'], x=ADBE['Date'], intercept=True)
这篇关于Pandas DataFrame - '不能在使用 ols/线性回归时从 [datetime64[ns]] 到 [float64] 键入 datetimelike的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Pandas DataFrame - '不能在使用 ols/线性回归时从
基础教程推荐
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
