Python 如何使用日期和时间值作为特征,使用神经网络预测值?

Python 如何使用日期和时间值作为特征,使用神经网络预测值?,python,numpy,neural-network,Python,Numpy,Neural Network,作为挑战的一部分,我试图用神经网络预测地震的震级。这是最新的 我已经用numpy为神经网络做了一个pet项目,但它只适用于二进制数 当我尝试执行此操作时,它可以完成,因为日期和时间功能 我正在寻找一些关于的参考资料,但在知道之前没有结论 这是我的笔记本,到目前为止,我一直在预测地震的震级 是否有人知道: 我可以使用日期和时间作为功能 用一些修正来预测震级 如果要使用日期,可以将其转换为浮点对象。您可以使用表示功能的日期列表来计算自该列表中最早日期起经过秒数的值列表。如果取两个datetime.

作为挑战的一部分,我试图用神经网络预测地震的震级。这是最新的

我已经用numpy为神经网络做了一个pet项目,但它只适用于二进制数

当我尝试执行此操作时,它可以完成,因为日期和时间功能

我正在寻找一些关于的参考资料,但在知道之前没有结论

这是我的笔记本,到目前为止,我一直在预测地震的震级

是否有人知道:

  • 我可以使用日期和时间作为功能
  • 用一些修正来预测震级

如果要使用日期,可以将其转换为浮点对象。您可以使用表示功能的日期列表来计算自该列表中最早日期起经过秒数的值列表。如果取两个datetime.datetime对象的差值,则会得到一个timedelta对象,该对象具有total_seconds属性

以下是如何进行此类转换的示例:

import datetime
date_features = [datetime.datetime(2013, 11, 10),
                 datetime.datetime(2016, 8, 20),
                 datetime.datetime(2015, 1, 12)]

# Get the list with seconds since earliest event
date_features = [(i - min(date_features)).total_seconds() for i in date_features]
# Normalize data so it lies between 0 and 1
date_features = [i/max(date_features) for i in date_features]
print(date_features)
输出:

[0.0, 1.0, 0.42209072978303747]
这些值通常可用作神经网络中的预测特征。将时间用作这样的功能可能不是最好的主意。 正如您提供的链接中提到的,日期也可以编码为分类数据。您并没有为自数据开始以来经过的时间添加一个变量和系数,而是每天或每小时添加一个

让我们看一下以下日期时间:

[datetime.datetime(2013, 11, 10),
 datetime.datetime(2013, 11, 10),
 datetime.datetime(2015, 1, 12)]
前两个数据点的时间特征值相同,第三个不同。您可以通过添加两个新变量对其进行编码,每个日期一个:

features = [[1, 1, 0],
            [0, 0, 1]]

我使用了二进制编码,如果事件发生在
datetime.datetime(2013,11,10)
,则第一个列表中的功能是1,否则为0。在第二个列表中,如果事件发生在
datetime.datetime(2015,1,12)
,则功能为1,其他功能为0。

什么宠物项目?@Nils我已更新以使其更清晰。这