是否有一种方法可以在python中使用数据集中以日期为变量的变量计数来运行线性回归?

问题描述 投票:0回答:1

我正在尝试创建一个线性模型来预测给定年份的犯罪数量。

数据集设置如下:-

示例:-

每个数据点均指该给定日期的犯罪

Date      Crime
12-31-15   yes
12-15-15   yes
11-14-13   yes
03-15-11   yes

我想以我的预测变量为年份,而预测变量为每年的犯罪数量进行线性回归。

[我所做的是计算每年的犯罪计数,基本上给了我:

df['countsofarrests'] = df.groupby('year')['year'].transform('count')

x (2011, 2012, 2013... 2018)

y (4123, 2312, 3231... 1231)每年的犯罪数量

我的问题是,我能否以某种方式做到这一点,以便能够预测2019年的犯罪,并且必须逐年合并?这样,感觉好像丢失了很多数据。

from sklearn.linear_model import LinearRegression

regressor = LinearRegression()

model = regressor.fit(x, y)

model.predict(2019)
python scikit-learn linear-regression
1个回答
0
投票

您要做的就是这个:):

model.predict([[2019]])
import pandas as pd

Date;Crime
12-31-15;yes
12-15-15;yes
11-14-13;yes
03-15-11;yes


df = pd.read_clipboard(sep=';')
df['Date'] = pd.to_datetime(df['Date'])

df['year'] = df.Date.dt.year
df['countsofarrests'] = df.groupby('year')['year'].transform('count')

X = df['year'].values.reshape(-1,1)
y = df['countsofarrests']


from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
model = regressor.fit(X, y)

model.predict([[2019]])

array([3.])
© www.soinside.com 2019 - 2024. All rights reserved.