从数据透视表熊猫中提取较小的表

我想将以下数据透视表拆分为训练和测试集(以评估推荐系统),并正在考虑提取两个具有不重叠索引(userID)和列值(ISBN)的表。如何正确分割?谢谢。

从数据透视表熊猫中提取较小的表

bangwancooler 回答:从数据透视表熊猫中提取较小的表

如@moys所建议,可以先将数据框列拆分为不重叠的列名,然后再使用train_test_split中的scikit-learn

示例:

import pandas as pd import numpy as np from sklearn.model_selection import train_test_split

生成数据:

df = pd.DataFrame(np.random.randint(0,100,size=(100,4)),columns=list('ABCD'))

以某种方式分割df列,例如一半:

cols = int(len(df.columns)/2) df_A = df.iloc[:,0:cols] df_B = df.iloc[:,cols:]

使用train_test_split:

train_A,test_A = train_test_split(df_A,test_size=0.33) train_B,test_B = train_test_split(df_B,test_size=0.33)

本文链接:https://www.f2er.com/3017558.html

大家都在问