詹惠儿

2021-07-05   阅读量: 1539

数据分析师

请问以下代码为什么报错

扫码加入数据分析学习群

问:

请问以下代码为什么报错:


data_F = [['学生','女',12,'否'],
['学生','男',18,'否'],
['老师','女',26,'是'],
['上班族','男',47,'是'],
['上班族','女',36,'是'],
['老师','男',29,'否'],
['学生','女',21,'是']]
df_data = pd.DataFrame(data_F,columns=['职业','性别','年龄','是否已婚'])
df_data[['职业','性别']].values
df_data[['职业','性别','年龄']].values
X=df_data[['职业','性别','年龄']].values
y=df_data['是否已婚'].str.replace('是','1').replace('否','0')


clf=tree.DecisionTreeClassifier(random_state=10)
clf=clf.fit(X,y)

#引入graphviz模块用来导出图,结果图如下所示
import graphviz
dot_data=tree.export_graphviz(clf,out_file=None,
feature_names=['职业','性别','年龄'],
class_names=['否','是'],
filled=True,rounded=True,
special_characters=True)
os.chdir(r'C:\graphviz-2.38\release\bin')
graph=graphviz.Source(dot_data)
graph.view()



答:

这是因为X中含有字符型数据,需要转化为数值型再导入决策树模型,

可以通过pandas的get_dummy方法sklearn的one-hot来实现

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
60.0000 1 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子