python - 通过 train_test_split() 使用单独的测试和训练文件
问题描述
我有两个.csv
文件,一个是test.csv
,另一个是train.csv
. 但是,正如您可以预测的那样,测试文件没有target column
(在这种情况下为“y”),而训练文件有。
我想做的是首先使用训练文件来完全训练系统,然后使用测试文件来查看预测。
我from sklearn.model_selection import train_test_split()
用来创建训练和测试示例,但它只接受 1 个文件路径。我想先使用训练文件训练系统,然后当它完成后,我想从test.csv
文件中获取测试数据并做出预测。
所以首先我尝试了经典的方法,但减少了测试大小,所以它就像“这个文件仅用于火车”,
import pandas as pd
from sklearn.svm import SVC
dataset = pd.read_csv(r'path\train.csv', sep=",")
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size = 0.001, random_state = 45)
clf = SVC(kernel = 'rbf')
clf.fit(X_train, y_train)
但是,当涉及到真正的测试部分(我想使用 test.csv 中没有目标值的数据)时,如何以某种方式导入 test.csv 我可以在上面的训练模型中使用测试数据
#get data from test.csv as somehow X_test
clfPredict = clf.predict(X_test)
如果这是不可能的train_test_split()
,那么完成这项任务的正确方法是什么?
解决方案
您需要加载火车 CSV 并将其拆分为:
y_train = df1['Y column']
X_train = df1.drop('Y Column', axis = 1)
关于测试:
X_test = df2
y_test 将是 clf.predict(X_test) 的结果
推荐阅读
- microsoft-graph-api - Microsoft Graph 客户端在获取照片时抛出异常 ErrorApiQuarantined
- reactjs - 反应中的部分 css 出现在整个应用程序中
- sql-server - SQL Server:将 Varchar 转换为 XML - 然后对其进行操作并选择数据?
- swiftui - SwiftUI - 向视图添加两个手势?
- python-3.x - 我的第一个自定义日志记录处理程序不起作用
- c# - 我们如何确保所有 NUnit [Test] 方法都是公开的?
- scripting - 如何仅在 Doxygen 中为与特定组标签相关的对象/类显示协作图
- python - 如何使用随机起点优化 Tensorflow 2.0 中的层权重
- kubernetes - kubectl get pods 不显示 READY-STATUS-RESTARTS
- forms - 行上的 Symfony 表单主题自定义属性