本人初学者,接触机器学习才个把月,不会写代码,到处复制黏贴,
学网上教程用df=pd.read_csv(本地路径)来打开数据集,
然后定义:
X = df.iloc[:,0:30]
y = df.iloc[:,[30]]
然后用train_test_split来抽样分训练和测试,这里碰到关于get_dummy的问题,
数据集里有很多无序类别,想用dummy转化,
但是get_dummy后,维度就增加了,特征也多了,y就不在原来[30]的位置上了,
等于target错了,整个模型结果都错了。
如果在定义X,y后再dummy,
也就是:
1.X = df.iloc[:,0:30]
y = df.iloc[:,[30]]
2.get_dummy
3.train_test_split,
这样的顺序好像dummy和后面的模型又没关系了,有没dummy结果跑出来一样。
请教下各位老师该如何处理dummy?
顺便问下,关于dummy,
所有的数据在放入模型跑前都要转换吗?最近在用xgboost,看网上的教程都没有转化,是xgboost不需要转化类别数据吗?