如何将json数据定义为X和Y的sklearn决策树数组
假设我的数据是关于水果的,描述了它们的颜色、形状以及其他特征(比如纹理、大小、皮的类型等等),这些特征的值是任意的。
我想用 sklearn.tree 来建立一个决策树。
我该如何在 sklearn.tree 中构建决策树呢?X 中的样本和特征数组是什么?Y 又是什么?
我使用 mongodb 作为数据库,所以数据集是以 json 格式存储的:
{"_id":2323, "shape":"round", "color":[red,green], "texture":"A", "pill":"X", "more":[1,2,3]}
{"_id":2324, "shape":"round", "color":[orange], "texture":"C", "pill":"", "more":[1,2]}
有没有教程可以教我如何将数据转换成构建决策树所需的 Python 数据类型?
谢谢!
1 个回答
2
看看这个关于 特征提取的文档。
编辑: 我刚注意到你的json结构里有嵌套的内容。DictVectorizer
和 FeatureHasher
这两个类都需要平坦的字典作为输入。你可以自己把这些结构变得简单,比如这样:
{"_id": 2323, "shape": "round", "color/red": 1 "color/green": 1, "texture": "A",
"pill": "X", "more/1": 1, "more/2": 1, "more/3": 1}
然后你可以在一系列这样的简单python字典上使用 DictVectorizer
或 FeatureHasher
。