链接预测与输入数据

时间:2018-01-18 19:37:12

标签: pandas numpy knn

我有一个文件列表,我使用KNN算法对这些文件进行分类。

dataset = pd.read_csv(file)
training_samples = get_sample_number(dataset)
X_train = dataset.iloc[:training_samples, 5:9]
y_train = dataset.iloc[:training_samples, 9]
X_test = dataset.iloc[training_samples:, 5:9]

# Feature Scaling
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.fit_transform(X_test)

# Fitting classifier to the training set
classifier = KNeighborsClassifier(n_neighbors=5, metric='minkowski', p=2)
classifier.fit(X_train, y_train)

y_pred = classifier.predict(X_test)

现在我的y_pred数组中有我的类别。但我想将结果保存在我读取数据集的文件中。如何将预测链接到文件(或数据集)中的右行?

1 个答案:

答案 0 :(得分:0)

y_pred中的预测长度为X_test.shape[0],显然小于原始dataset的长度。如果您想将预测附加到从dataset读取的原始file,则需要对整个数据集进行预测,然后执行简单的concat以获取所有预测一起:

y_pred_all = classifier.predict(dataset.iloc[:, 5:9])

dataset = pd.concat([dataset, y_pred_all], axis=1)