gpt4 book ai didi

python - KNN - 在 python 中预测单个案例

转载 作者:行者123 更新时间:2023-12-01 00:02:00 25 4
gpt4 key购买 nike

我正在使用 Kaggle 的数据集 - 心血管疾病 Dataset 。模型已经过训练,我想要做的是标记单个输入(一行 13 个值)以动态方式插入。

数据集的形状为 13 个特征 + 1 个目标,66k 行

#prepare dataset for train and test
dfCardio = load_csv("cleanCardio.csv")
y = dfCardio['cardio']
x = dfCardio.drop('cardio',axis = 1, inplace=False)
model = knn = KNeighborsClassifier()
x_train,x_test, y_train, y_test = train_test_split(x,y,test_size=0.2,random_state=42)
model.fit(x_train, y_train)
# make predictions for test data
y_pred = model.predict(x_test)
predictions = [round(value) for value in y_pred]
# evaluate predictions
accuracy = accuracy_score(y_test, predictions)
print("Accuracy: %.2f%%" % (accuracy * 100.0))

ML 经过训练,我想做的是预测这一行的标签:

['69','1','151','22','37','0','65','140','90','2','1','0','0','1']

为目标返回 0 或 1。所以我写了这段代码:

import numpy as np
import pandas as pd
single = np.array(['69','1','151','22','37','0','65','140','90','2','1','0','0','1'])
singledf = pd.DataFrame(single)
final=singledf.transpose()
prediction = model.predict(final)
print(prediction)

但它给出错误:查询数据维度必须与训练数据维度匹配

如何修复单行标签?为什么我无法预测单个病例?

最佳答案

数据集中的每个实例都有 13 个特征和 1 个标签。

x = dfCardio.drop('cardio',axis = 1, inplace=False)

代码中的这一行删除了我认为是数据中的标签列,只留下 (13) 个特征列。

您尝试预测的特征向量有 14 个元素长。您只能预测长度为 13 个元素的特征向量,因为这是模型训练的内容。

关于python - KNN - 在 python 中预测单个案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60271338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com