【问题标题】:TypeError: predict() missing 1 required positional argument: 'X' in sklearn KMeans类型错误:预测()缺少 1 个必需的位置参数:sklearn KMeans 中的“X”
【发布时间】:2021-04-16 06:06:55
【问题描述】:
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
import warnings
import graphviz
warnings.filterwarnings('ignore')
%matplotlib inline
import os
from sklearn.cluster import KMeans

#Importing the dataset
Diabetes2 = pd.read_csv('C:\\Users\\PPP\\Desktop\\Python_Practice\\Datasets\\Diabetes\\diabetic_data.csv', index_col=False)

#Split into input and output features
y = Diabetes2["readmittedFL"]
X = Diabetes2[["time_in_hospital","num_lab_procedures","num_procedures","num_medications",
               "number_outpatient","number_emergency","number_inpatient","number_diagnoses"]]
X.head()
y.head()

#Select the annual income and the spending score columns 
KMeans = KMeans()
X_array=X.iloc[0:8:1].values
y_kmeans = KMeans.predict(X_array)
plt.scatter(X_array[:, 0], X_array[:, 1], c=y_kmeans, s=50, cmap='viridis')

我刚开始练习 KMeans,但出现此错误。我不明白出了什么问题。

当我运行命令y_kmeans = KMeans.predict(X_array)时, 它显示错误 TypeError: predict() missing 1 required positional argument: X

我该如何解决这个错误?

【问题讨论】:

    标签: python python-2.7 machine-learning scikit-learn k-means


    【解决方案1】:

    你需要使用fit_predict 而不是predict

    • fit_predict :训练和预测您的训练点集群
    • 预测:当您获得新的数据点时用于推理 不存在于您的火车数据中

    您也没有通过n_clusters 参数指定集群的数量,它将采用默认数字,即 8

    更多信息请查看link

    【讨论】:

      猜你喜欢
      • 2021-09-26
      • 2019-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      • 2018-09-12
      相关资源
      最近更新 更多