使用带有不同熊猫数据框的scikit-learn运行LinearRegression模型(循环问题)

kit12_31

我有一个包含成本,风能,太阳能和一天中的小时的数据框,并且喜欢使用scikit-learn的线性回归模型来查找风能和太阳能如何影响成本。我已经用P1-P24(每天24小时)标记了每个小时,即取决于一天中的小时,每一行都将被分配一个P(1-24)

因此,我已经根据一天中的小时将风/太阳能/成本的每一行定义为不同的数据帧

该代码可以运行所有我想做的事情。但是我很难建立一个每小时重复运行的for循环代码,以从scikit-learn上的各种熊猫数据帧(P1至P24)中查找linreg.intercept,linreg.coef和np.sqrt(metrics.mean_squared_error(y_test,y_pred)函数)。

因此,目前我必须手动更改P数24次,以找到每小时对应的截距/系数/均方误差

我下面有一些工作代码,但我总是很难为循环构建

我试图在[P1,P2 ...]中使用for来构建for循环,但数据帧成为一个列表,我也很难将其合并到scikit-learn部分

b是带有以下各列的原始数据框:成本,周期(半小时,因此我的周期为1至48),风能,太阳能

导入数据框

 b = pd.read_csv('/Users/Downloads/cost_latest.csv')

因此,按小时计算:

 P1 = b[b['Period'].isin(['01','02'])]
 P2 = b[b['Period'].isin(['03','04'])]...

scikit学习部分:

 feature_cols = ['wind','Solar']
 X = P1[feature_cols]
 y = P1['Price']

这是我的问题,在运行以下代码获取参数之前,我需要将P1更改为P2 ... P24

以下是scikit学习部分:

 from sklearn.model_selection import train_test_split
 X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1)
 from sklearn.linear_model import LinearRegression

 linreg = LinearRegression()

使模型适合训练数据(学习系数)

 linreg.fit(X_train, y_train)
 print(linreg.intercept_)
 print(linreg.coef_)
 list(zip(feature_cols, linreg.coef_))
 y_pred = linreg.predict(X_test)
 from sklearn import metrics
 print(np.sqrt(metrics.mean_squared_error(y_test, y_pred)))

我认为有一种更聪明的方法可以避免我手动编辑以下(P值)并一次性运行所有内容,我欢迎您的建议,建议谢谢

 X = P1[feature_cols]
 y = P1['Price']
塞拉鲁克

只需使用此:

for P in [P1,P2, P3,P4,P5,P6,P7]:
    X = P[feature_cols]
    y = P['Price']

全部一起:

from sklearn import metrics
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split

all_intercepts = []
all_coefs = []

for P in [P1,P2, P3,P4,P5,P6,P7]:
    X = P[feature_cols]
    y = P['Price']
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1)
    linreg = LinearRegression()
    linreg.fit(X_train, y_train)
    print(linreg.intercept_)
    print(linreg.coef_)
    list(zip(feature_cols, linreg.coef_))
    y_pred = linreg.predict(X_test)
    print(np.sqrt(metrics.mean_squared_error(y_test, y_pred)))
    all_intercepts.append(linreg.intercept_)
    all_coefs.append(linreg.coef_)


print(all_intercepts)
print(all_coefs)

P 根据每次迭代,将成为您的数据帧P1,P2,...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

熊猫数据框创建带有循环的列

来自分类Dev

带有特殊字符的熊猫数据框问题

来自分类Dev

使用Scikit Learn对时间序列熊猫数据框进行线性回归

来自分类Dev

For 循环创建熊猫数据框 - 不同的数据框名称?

来自分类Dev

如何制作带有循环行的数据框?大熊猫

来自分类Dev

熊猫,使用for循环构建新的数据框

来自分类Dev

循环熊猫数据框

来自分类Dev

在具有分层索引的熊猫数据框中使用iloc的问题

来自分类Dev

将scikit-learn(sklearn)预测添加到熊猫数据框

来自分类Dev

Scikit-Learn-一键编码熊猫数据框的某些列

来自分类Dev

scikit-learn线性回归模型执行中的问题

来自分类Dev

使用带有循环的不同长度的不同数据帧中的纬度和经度数据计算距离

来自分类Dev

使用带有for循环的分组值的数据框制作时间线图

来自分类Dev

R-使用带有for循环的其他变量在数据框中创建变量

来自分类Dev

使用带有 ggplot2 的 for 循环在数据框中绘制多个图形

来自分类Dev

选择带有'%'的数据并在熊猫中进行处理的问题

来自分类Dev

使用 Scikit-Learn 使用分类数据制作回归模型

来自分类Dev

重新拟合已保存的scikit-learn模型而未使用某些功能-“ ValueError:给定的列不是数据框的列”

来自分类Dev

R-使用嵌套数据框运行具有不同参数集的函数

来自分类Dev

R-使用嵌套数据框运行具有不同参数集的函数

来自分类Dev

如何在两个变量的组合上运行模型,并使用 tidyverse 为每个模型返回带有 p 值和 r 平方的数据框

来自分类Dev

使用带有熊猫的数据框进行概率测试

来自分类Dev

使用for循环重命名熊猫数据框列

来自分类Dev

使用循环调用多个熊猫数据框列

来自分类Dev

使用枚举在熊猫数据框中进行循环

来自分类Dev

熊猫使用for循环创建多个数据框

来自分类Dev

熊猫-使用数据框中的嵌套for循环进行迭代

来自分类Dev

对熊猫数据框使用TextBlob转换功能的问题

来自分类Dev

For循环进入熊猫数据框

Related 相关文章

  1. 1

    熊猫数据框创建带有循环的列

  2. 2

    带有特殊字符的熊猫数据框问题

  3. 3

    使用Scikit Learn对时间序列熊猫数据框进行线性回归

  4. 4

    For 循环创建熊猫数据框 - 不同的数据框名称?

  5. 5

    如何制作带有循环行的数据框?大熊猫

  6. 6

    熊猫,使用for循环构建新的数据框

  7. 7

    循环熊猫数据框

  8. 8

    在具有分层索引的熊猫数据框中使用iloc的问题

  9. 9

    将scikit-learn(sklearn)预测添加到熊猫数据框

  10. 10

    Scikit-Learn-一键编码熊猫数据框的某些列

  11. 11

    scikit-learn线性回归模型执行中的问题

  12. 12

    使用带有循环的不同长度的不同数据帧中的纬度和经度数据计算距离

  13. 13

    使用带有for循环的分组值的数据框制作时间线图

  14. 14

    R-使用带有for循环的其他变量在数据框中创建变量

  15. 15

    使用带有 ggplot2 的 for 循环在数据框中绘制多个图形

  16. 16

    选择带有'%'的数据并在熊猫中进行处理的问题

  17. 17

    使用 Scikit-Learn 使用分类数据制作回归模型

  18. 18

    重新拟合已保存的scikit-learn模型而未使用某些功能-“ ValueError:给定的列不是数据框的列”

  19. 19

    R-使用嵌套数据框运行具有不同参数集的函数

  20. 20

    R-使用嵌套数据框运行具有不同参数集的函数

  21. 21

    如何在两个变量的组合上运行模型,并使用 tidyverse 为每个模型返回带有 p 值和 r 平方的数据框

  22. 22

    使用带有熊猫的数据框进行概率测试

  23. 23

    使用for循环重命名熊猫数据框列

  24. 24

    使用循环调用多个熊猫数据框列

  25. 25

    使用枚举在熊猫数据框中进行循环

  26. 26

    熊猫使用for循环创建多个数据框

  27. 27

    熊猫-使用数据框中的嵌套for循环进行迭代

  28. 28

    对熊猫数据框使用TextBlob转换功能的问题

  29. 29

    For循环进入熊猫数据框

热门标签

归档