【发布时间】:2020-11-01 06:33:12
【问题描述】:
我正在为分类问题开发神经网络。我有一个带有文本 id 列的数据集,我使用 pandas.factorize() 函数将字符串 id 转换为 int id。
我的名为“customer_id”的文本 id 列如下所示:
customer_id
0 Z59FTQD
1 HMP29SK
2 VPP29SK
3 VPP29SK
.. .. .. .. ..
1500 0JP2FAB
15001 ZJP29AK
使用后:
dataset['customer_num_id'] = pd.factorize(dataset['customer_id'])[0] + 1
要创建一个名为“customer_num_id”的新列以将字符串 id 表示为 int 值以输入我的神经网络模型,我的新列如下所示:
customer_id customer_num_id
0 Z59FTQD 1
1 HMP29SK 2
2 VPP29SK 3
3 VPP29SK 3
.. .. .. .. ..
1500 0JP2FAB 1500
1501 ZJP29AK 1501
我想在大约 80% 的数据上训练我的模型并在剩余的 20% 上进行测试。
我的问题是:我应该在将数据集拆分为训练集和测试集之前还是之后分解它?
【问题讨论】:
标签: pandas machine-learning classification