如果没有因变量,如何将数据集(CSV(拆分为Python编程语言中的训练和测试数据?
我目前正在从事的项目是基于机器学习的,数据集不包含任何相关数据。仅当数据集包含依赖数据时,以下代码才有效-
from sklearn.model_selection import train_test_split
xTrain, xTest, yTrain, yTest = train_test_split(x, y, test_size = 0.2, random_state = 0)
我希望分裂会在没有任何y
变量的情况下发生。可能吗?
有两种"随机"分布。1(100%随机2(数据的"随机"但"平均"分布(即相同的均值/范数(
为了回答您的问题,我首先建议使用一个包来管理您的数据框(即熊猫(
有关信息,请参阅链接:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.sample.html
因此,如果您想通过替换获得数据帧的随机 50% 样本:
df.sample(frac=0.5, replace=True, random_state=1)
要将数据集拆分为训练集和测试集,我们可以先对整个数据集进行洗牌,然后根据所需的大小将其切片。
import pandas as pd
shuffle = df.sample(frac=1)
train_size = int(0.8 * len(df))
train = shuffle[:train_size]
test = shuffle[train_size:]