今天必须写个博文mark一下了,错了不知道几百次的弱智问题。
train_x = data[data.label != -1].reset_index(drop=True)#注意!否则报错
train_y = train_x.pop('label').values
train_index = train_x[train_x.A == 2018].index.tolist()
test_index = train_x[train_x.B == 1016].index.tolist()
print(train1_x[train_index], train1_y[train_index])
print(train1_x[test_index], train1_y[test_index])
#train1_x是对trainx的列进行某些操作得到的,进行过reset_index(drop=True),所以index连续。如:
print(train1_x.index.tolist()) #[1,2,3,4]
#而train_x = data[data.label != -1],如果不进行reset_index(drop=True),index会变得不连续。如:
print(train_x.index.tolist()) #[1,2,4,5]
#在后面需要对train1_x进行操作时,如果前面不对train_x进行reset_index(drop=True),那么train1_x的index找不到5会报错。