【问题标题】:How can I use my date feature on my algorithm?如何在我的算法中使用我的日期功能?
【发布时间】:2017-09-13 17:50:52
【问题描述】:
X = df1.iloc[:, 1:].values
y = df1.iloc[:, 0].values

from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25,     random_state=0) 

from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors=3, metric='minkowski', p=2)
knn.fit(X_train, y_train)

ValueError: could not convert string to float: '2/1/2011'

我正计划使用这些功能制作一个投注模型。 FTR = 全职结果:(H)ome, (D)raw, (A)way odds_H = 主队赔率

【问题讨论】:

  • 属性是什么
  • 您能否以文本格式获取您的df 而不是PNG,以便其他人可以使用该数据来模拟您的问题?您可以简单地复制/粘贴数据并将其标记为代码或 Blockquote。

标签: python datetime dataframe machine-learning scikit-learn


【解决方案1】:

在 ML 中,如果您将日期作为一项功能,您可以做很多事情。过去有用的一些转换示例:

  • 日数、月数、年数、季度数
  • 工作日
  • 季节(例如 spring=0、summer=1 ...)
  • year_day 数字(1 月 1 日 = 0,12 月 31 日 = 364)
  • 某个事件之后/之前的天数(在您的示例中,这可能是自上一场比赛以来的天数)
  • 还有更多...

其中一些有一些注意事项,但总的来说,从datetime 对象到这些表示中的每一个(作为整数)应该很容易。根据您的特定数据集,其中一些可能非常有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-16
    • 2020-05-08
    • 1970-01-01
    • 2021-03-10
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    相关资源
    最近更新 更多