ValueError:无法将字符串转换为浮点数:'01-01-20 0:15'

问题描述

下面是我正在处理的示例数据集,我每 30 分钟存储一次平均值。

|Slot              |    value|
|01-01-2018 00:30  |   78.3  |
|01-01-2018 01:00  |   74.5  |
|01-01-2018 01:30  |   79.2  |
|01-01-2018 02:00  |   78.7  |
|01-01-2018 02:30  |   77.3  |
|01-01-2018 03:30  |   76.4  |

当我尝试为该数据集绘制自相关函数 (ACF) 图时,我收到错误消息:

ValueError: 无法将字符串转换为浮点数:'01-01-20 0:15'

这是我的代码

from statsmodels.graphics.tsaplots import plot_acf
plot_acf(freq)

解决方法

plot_acf 函数接受值,滞后需要在单独的参数中定义。

plot_acf(df['value'])

如果滞后对您很重要(我认为这无关紧要,因为您已经有固定的 30 分钟间隔),您可以定义滞后。

lags = [0,30,60,90...]
plot_acf(df['value'],lags=lags)

https://www.statsmodels.org/stable/generated/statsmodels.graphics.tsaplots.plot_acf.html