人工智能 特征工程 数据抽取、预处理、降维

字典数据抽取

from sklearn.feature_extraction import DictVectorizer

dict = DictVectorizer(sparse=False)
data = dict.fit_transform([{'city': '北京','temperature': 100}, {'city': '上海','temperature':60}, {'city': '深圳','temperature': 30}])

print(dict.get_feature_names())

print(data)

print(dict.inverse_transform(data))

在这里插入图片描述
文本数据抽取
from sklearn.feature_extraction.text import CountVectorizer

cv = CountVectorizer()

data = cv.fit_transform(['life is showrt, i like python', 'life is too long , i dislike java'])

print(cv.get_feature_names())

print(data)
print(data.toarray())

在这里插入图片描述
中文分词

   import jieba
    from sklearn.feature_extraction.text import CountVectorizer
    
    con1 = jieba.cut("今天很残酷,明天更残酷,后天很美好,但绝对大部分是死在明天晚上,所以每个人不要放弃今天。")
    con2 = jieba.cut("我们看到的从很远星系来的光是在几百万年之前发出的,这样当我们看到宇宙时,我们是在看它的过去。")
    con3 = jieba.cut("如果只用一种方式了解某样事物,你就不会真正了解它。了解事物真正含义的秘密取决于如何将其与我们所了解的事物相联系。")
    
    content1 = ' '.join(list(con1))
    content2 = ' '.join(list(con2))
    content3 = ' '.join(list(con3))
    
    print(content1)
    print(content2)
    print(content3)
    
    
    cv = CountVectorizer()
    data = cv.fit_transform([content1, content2, content3])
    print(cv.get_feature_names())
    print(data.toarray())

在这里插入图片描述
使用tf-idf进行分词处理

import jieba
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer

con1 = jieba.cut("今天很残酷,明天更残酷,后天很美好,但绝对大部分是死在明天晚上,所以每个人不要放弃今天。")
con2 = jieba.cut("我们看到的从很远星系来的光是在几百万年之前发出的,这样当我们看到宇宙时,我们是在看它的过去。")
con3 = jieba.cut("如果只用一种方式了解某样事物,你就不会真正了解它。了解事物真正含义的秘密取决于如何将其与我们所了解的事物相联系。")

content1 = ' '.join(list(con1))
content2 = ' '.join(list(con2))
content3 = ' '.join(list(con3))

print(content1)
print(content2)
print(content3)


cv = TfidfVectorizer()
data = cv.fit_transform([content1, content2, content3])
print(cv.get_feature_names())
print(data.toarray())

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_30505673/article/details/90021827
今日推荐