首页 > 解决方案 > 是否可以使用列表来预测 python 中的数据?

问题描述

目前我一直在使用列表来绘制数据,并希望找出一种预测模式。尝试使用数据框对我没有帮助,并且引起了极大的不适。是否可以使用 python 列表和机器学习或模式识别算法来预测数据?我是 python 新手 :)

标签: pythonmachine-learningforecasting

解决方案


我需要一个可以输入时间戳并使用它来预测未来时间戳的程序。很长一段时间后,对我有用的是使用只有小时:分钟:秒格式的时间戳并将它们转换为浮点数。然后使用这些浮点数并将其与时间戳的条目号配对。所以我有一个二维列表,只是为了将数据整齐地收集成一堆。

示例:timestamp_1, 0 timestamp_2, 1 timestamp_3, 2

然后分配两个变量,它们将获取一列的数据。浮点数将在 y 轴上,而 x 轴将是数字序列,例如。0,1,2,3,... 等等。

然后使用线性回归的 svr_lin.fit 我能够绘制一个匹配所有点的图形,因为由于 x 轴上的数字它将是一条线。最后,通过 svr_lin.predict 和循环,我可以打印未来的数据点。希望这可以帮助那些试图使用 python 获得“未来”时间戳的人。

代码:

data = [[timestamp_1, 0],
        [timestamp_2, 1],
        [timestamp_3, 2],
        [timestamp_4, 3],
        #continues...
         ]]

list_time = []
list_numbers = []

list_time = [i[0] for i in data]
list_numbers = [i[1] for i in data]

list_numbers = np.reshape(list_number, (len(list_numbers), 1))

svr_lin = SVR(kernel='linear', C=1e3)

svr_lin.fit(list_numbers, list_time)

plt.scatter(list_numbers, list_time)
plt.plot(list_numbers, svr_lin.predict(list_numbers)) #in a different colour
plt.show

'''x is out of sample and starting point I have kept in sample however, starting 
point does not need to be the 0th element.'''

for i in range(0,x):
    print(svr_lin.predict(i))

Siraj Raval 和堆栈溢出用户的代码对我帮助很大。


推荐阅读