获取错误“ValueError:找到带有不一致样本数的输入变量:[35,311]”在ML的knn算法中使用python

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

我正在尝试为ML练习这段代码,但是我遇到了一些错误,说“ValueError:发现输入变量数量不一致的样本:[70,276]”

代码如下:

    X = Feature
    X[0:5]
    y = df['loan_status'].values
    y[0:5]
    X= preprocessing.StandardScaler().fit(X).transform(X)
    X[0:5]
    from sklearn.metrics import jaccard_similarity_score, log_loss, 
    f1_score
    from sklearn.model_selection import train_test_split
    from sklearn.neighbors import KNeighborsClassifier



    #Split data....also face error here
    Xtrn, Xtst, ytrn, ytst = train_test_split(X, y, test_size=0.2, 
    random_state=6)
    #Lets k=6
    k = 6
    knn= KNeighborsClassifier(n_neighbors = k).fit(Xtrn,ytrn)
    knn
    y_pred = knn.predict(Xtrn)
    y_pred[0:5]


    #-----face error here
    print("Jaccard Score in train set= ", jaccard_similarity_score(ytrn, 
    knn.predict(Xtrn)))
    print("F1 Score in train set= ", f1_score(ytrn, knn.predict(Xtrn), 
    average='weighted'))
    print("F1 Score in test set=  ", f1_score(ytst, y_pred, 
    average='weighted'))
    print("Jaccard Score in test set= ", jaccard_similarity_score(ytst, 
    y_pred))
python knn
1个回答
0
投票

XY的形状不适合train_test_split。尝试检查他们的形状。

使用shape方法。例如 - X.shape

然后使用reshape方法使两个形状对齐。

© www.soinside.com 2019 - 2024. All rights reserved.