为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用熊猫从一个数据框创建测试并训练样本?

如何使用熊猫从一个数据框创建测试并训练样本?

万千封印 2019-10-14 11:12:44
我有一个数据框形式的相当大的数据集,我想知道如何将数据框分成两个随机样本(80%和20%)进行训练和测试。
查看完整描述

3 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

我只会用numpy的randn:


In [11]: df = pd.DataFrame(np.random.randn(100, 2))


In [12]: msk = np.random.rand(len(df)) < 0.8


In [13]: train = df[msk]


In [14]: test = df[~msk]

只是看到它起作用了:


In [15]: len(test)

Out[15]: 21


In [16]: len(train)

Out[16]: 79


查看完整回答
反对 回复 2019-10-14
?
料青山看我应如是

TA贡献1772条经验 获得超7个赞

scikit Learn'strain_test_split是一个不错的选择。


from sklearn.model_selection import train_test_split


train, test = train_test_split(df, test_size=0.2)


查看完整回答
反对 回复 2019-10-14
?
收到一只叮咚

TA贡献1821条经验 获得超4个赞

我将使用scikit-learn自己的training_test_split,并从索引生成它


from sklearn.cross_validation import train_test_split



y = df.pop('output')

X = df


X_train,X_test,y_train,y_test = train_test_split(X.index,y,test_size=0.2)

X.iloc[X_train] # return dataframe train


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 423 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信