作用:对字典数据进行特征值化
- sklearn.feature_extraction.DictVectorizer(sparse=True,…)
- DictVectorizer.fit_transform(X) X:字典或者包含字典的迭代器返回值:返回sparse矩阵
- DictVectorizer.inverse_transform(X) X:array数组或者sparse矩阵 返回值:转换之前数据格式
- DictVectorizer.get_feature_names() 返回类别名称
我们对以下数据进行特征提取
[{
'city': '北京','temperature':100},
{
'city': '上海','temperature':60},
{
'city': '深圳','temperature':30}]
def dict_demo():
"""
字典特征值提取
:return:
"""
data = [{
'city': '北京', 'temperature': 100}, {
'city': '上海', 'temperature': 60}, {
'city': '深圳', 'temperature': 30}]
# 1. 实例化一个转换器 默认返回 sparse矩阵 将非0值按位置表示出来 以节省内存 提高加载效率
transfer = DictVectorizer(sparse=False)
# 应用场景:数据集中类别特征值较多;将数据集的特征-》字典类型;DictVectorizer转换;本身拿到的就是字典
# 2. 调用fit_transform()
data_new = transfer.fit_transform(data)
print("data_new:\n", data_new)
print("特征名字:\n", transfer.get_feature_names())
return None
对于特征当中存在类别信息的我们都会做one-hot编码处理