如何在 Python Numpy 中使用 train_test_split 修复值错误

How to fix Value Error with train_test_split in Python Numpy

我正在使用带有 numpy 数组的 sklearn。 我有 2 个数组 (x, y),它们应该是:

test_size=0.2
train_size=0.8

这是我当前的代码:

def predict():

    sample_data = pd.read_csv("includes\csv.csv")

    x = np.array(sample_data["day"])
    y = np.array(sample_data["balance"])


    x = x.reshape(1, -1)



    y = y.reshape(1, -1)




    print(x)
    print(y)



    X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.2)



    clf = LinearRegression()
    clf.fit(x_train, y_train)

    clf.score(x_test, y_test)

错误是:

ValueError: With n_samples=1, test_size=0.2 and train_size=None, the resulting train set will be empty. Adjust any of the aforementioned parameters.

,它出现在行中:

X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.2)

知道为什么会出现这种情况吗?

我有那个问题。检查图书馆 "scikit-learn"。 sklearn 对 scikt-learn 0.20.0+ 版本有问题,尝试做:

Windows: pip uninstall scikit-learn
Linux: sudo python36 -m pip uninstall scikit-learn

并安装:

Windows: pip install scikit-learn==0.19.1
Linux: sudo python36 -m pip install scikit-learn==0.19.1