从csv获取panda Series

我对机器学习完全是新手,目前正在玩MNIST机器学习,使用RandomForestClassifier进行分类。

我使用了sklearn和panda。我有一个用于训练的CSV数据集。

import pandas as pdimport numpy as npfrom sklearn import model_selectionfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.svm import LinearSVCfrom sklearn.linear_model import SGDClassifierfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.metrics import accuracy_scoretrain = pd.read_csv("train.csv")features = train.columns[1:]X = train[features]y = train['label']user_train = pd.read_csv("input.csv")user_features = user_train.columns[1:]y_train = user_train[user_features]user_y = user_train['label']X_train, X_test, y_train, y_test = model_selection.train_test_split(X/255.,y,test_size=1,random_state=0)clf_rf = RandomForestClassifier()clf_rf.fit(X_train, y_train)y_pred_rf = clf_rf.predict(X_test)acc_rf = accuracy_score(y_test, y_pred_rf)print("pred : ", y_pred_rf)print("random forest accuracy: ",acc_rf)

我目前的代码运行良好。它会将训练集分开并取一个元素用于测试,然后进行预测。

现在我想使用来自输入的数据进行测试,我有一个新的csv文件名为“input.csv”,我想预测这个csv文件中的值。

我怎样才能用我的输入数据替换model_selection.train_test_split?我确信答案很明显,但我没找到任何相关信息。


回答:

你的代码的以下部分未被使用

user_train = pd.read_csv("input.csv")user_features = user_train.columns[1:]y_train = user_train[user_features]user_y = user_train['label']

如果input.csv与train.csv具有相同的结构,你可以考虑以下操作:

  • 在input.csv数据集的分割上训练并测试分类器:(请参考http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html了解如何设置测试大小)

    input_train = pd.read_csv("input.csv")    input_features = user_train.columns[1:]    input_data = user_train[input_features]    input_labels = user_train['label']data_train, data_test, labels_train, labels_test = model_selection.train_test_split(input_data/255.,input_labels,test_size=1,random_state=0)clf_rf = RandomForestClassifier()clf_rf.fit(data_train, labels_train)labels_pred_rf = clf_rf.predict(data_test)acc_rf = accuracy_score(labels_test, labels_pred_rf)
  • 在整个input.csv文件上测试之前训练的分类器

    input_train = pd.read_csv("input.csv")    input_features = user_train.columns[1:]    input_data = user_train[input_features]    input_labels = user_train['label']labels_pred_rf = clf_rf.predict(input_data)acc_rf = accuracy_score(input_labels, labels_pred_rf)

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注