我尝试将非数字值转换为数值以计算决策树。但是,每次调用NaN
函数时,map()
值都会弹出。
这里是代码和必要的信息。
这是我得到的o / p。
这是代码,调用map()函数。
x = {'BS':1,'MS':2,'CODE CAMP':3,'PHD':4}
df['education'] = df['education'].map(x)
答案 0 :(得分:2)
在列中的文本之前或之后看起来有些空格:
df = pd.DataFrame({'education' : ['BS ','MS ','MS ']})
print (df)
education
0 BS
1 MS
2 MS
x={'BS':1,'MS':2,'CODE CAMP':3,'PHD':4}
df['education']=df['education'].map(x)
print (df)
education
0 NaN
1 NaN
2 NaN
您可以str.strip
删除它们:
df['education']=df['education'].str.strip().map(x)
print (df)
education
0 1
1 2
2 2
答案 1 :(得分:-2)
df = df.drop("education", 1)
你刚刚使用drop()来了解教育。教育集团没有建立决策树的意义,所以只需丢弃它。