类型错误:预测()缺少 1 个必需的位置参数:sklearn KMeans 中的“X”

Posted

技术标签:

【中文标题】类型错误:预测()缺少 1 个必需的位置参数:sklearn KMeans 中的“X”【英文标题】:TypeError: predict() missing 1 required positional argument: 'X' in sklearn KMeans 【发布时间】: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

我该如何解决这个错误?

【问题讨论】:

【参考方案1】:

你需要使用fit_predict 而不是predict

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

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

更多信息请查看link

【讨论】:

以上是关于类型错误:预测()缺少 1 个必需的位置参数:sklearn KMeans 中的“X”的主要内容,如果未能解决你的问题,请参考以下文章

类型错误:预测()缺少 1 个必需的位置参数:sklearn KMeans 中的“X”

类型错误:initialize() 缺少 1 个必需的位置参数:'url'

类型错误:parse() 缺少 1 个必需的位置参数:'stream'

类型错误:new() 缺少 1 个必需的位置参数:'y'

类型错误:攻击()缺少 1 个必需的位置参数:“自我”

类型错误:<lambda>() 缺少 1 个必需的位置参数:'w'