python 将数据分为测试和培训两部分,并转换为csv或excel文件

taor4pac  于 2023-01-16  发布在  Python
关注(0)|答案(2)|浏览(125)

我有一个很大的数据集(大约200 k行),我想把数据集随机分成两部分,70%作为训练数据,30%作为测试数据。有没有办法在python中做到这一点?注意我还想把这些数据集保存为excel或csv文件在我的电脑中。谢谢!

6ojccjat

6ojccjat1#

from sklearn.model_selection import train_test_split
#split the data into train and test set
train,test = train_test_split(data, test_size=0.30, random_state=0)
#save the data
train.to_csv('train.csv',index=False)
test.to_csv('test.csv',index=False)
mtb9vblg

mtb9vblg2#

首先导入以下内容:

from sklearn.model_selection import train_test_split
import pandas as pd

为了进行拆分,您可以使用sklearn包中的train_test_split函数:

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

其中X,y是从原始 Dataframe 中获取的。
稍后,您可以使用panda包将它们导出为CSV:

X_train.to_csv(index=False)
X_test.to_csv(index=False)

y数据也是如此。
编辑:当你澄清了这个问题并要求在同一个文件中同时使用X和Y因子时,你可以做以下操作:

train, test = train_test_split(yourdata, test_size=0.3, random_state=42)

然后像我上面提到的那样将它们导出为csv。

相关问题