【问题标题】:I updated scikit.learn but I have still get this error: ModuleNotFoundError: No module named 'sklearn.cross_validation'我更新了 scikit.learn 但我仍然收到此错误:ModuleNotFoundError: No module named 'sklearn.cross_validation'
【发布时间】:2019-07-18 03:27:00
【问题描述】:

我想做线性回归,但我对 scikit.learn 有疑问。我从 20.1 更新到 20.2,但仍然出现 ModuleNotFoundError。

【问题讨论】:

    标签: python python-3.x scikit-learn linear-regression data-analysis


    【解决方案1】:

    交叉验证功能已移至model_selection。要访问它的功能,您可以尝试:

    from sklearn.model_selection import cross_validate                                          
    from sklearn.model_selection import cross_val_predict                          
    from sklearn.model_selection import cross_val_score 
    from sklearn.model_selection import train_test_split
    

    请参阅Cross-validation 上的文档和示例

    【讨论】:

    • 感谢您的回复。我尝试了 from sklearn.model_selection import cross_validate 但我遇到了这个错误 TypeError: cross_validate() got an unexpected keyword argument 'test_size'
    • cross_validate 没有 test_size 参数。它所拥有的是cv,它可能是一个整数,指定 cv 折叠的数量,或者是可迭代的,或者是生成器,它返回(训练、测试)索引。有关更多信息和示例,请参阅docs
    • import numpy as np import pandas as pd import matplotlib.pyplot as plt data=pd.read_csv('C:/Users/KURSAT/Desktop/Salary.csv') print(data.head() ) X=data.iloc[:,:-1].values y=data.iloc[:,:-1].values #Split on Datas from sklearn.model_validation import test_train_split X_train,X_test,y_train,y_test=test_train_split(X ,y,test_size=1/3,random_state=0) #RegressionLine from sklearn.linear_model import LinearRegression regressor=LinearRegression() regressor.fit(X_train,y_train) #Predict y_predict=regressor.predict(X_test) #DrawGraph
    猜你喜欢
    • 2019-07-21
    • 2019-11-04
    • 2021-12-16
    • 1970-01-01
    • 2021-04-13
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    相关资源
    最近更新 更多