類:sklearn.feature_extraction.dictvectorizer
語法結構:
·····dictvectorizer
(sparse=true,…)
方法:①dictvectorizer.
fit_transform
(x) x:
字典或者包含
字典的迭代器
返回值:返回
sparse矩陣
②dictvectorizer
.inverse_transform
(x)
x:array
陣列或者
sparse矩陣
返回值:
轉換之前資料格式
③dictvectorizer.get_feature_names()
返回類別名稱
④dictvectorizer.transform
(x)
按照原先的標準轉換
具體實現**:
from sklearn.feature_extraction import dictvectorizer
def dictvec():
"""字典資料抽取"""
# 例項化
# sparse = f 結果換為矩陣形式
dict = dictvectorizer(sparse=false)
# 即將轉化的資料
data = [,,]
# 呼叫 fit_transform 進行特徵化
data = dict.fit_transform(data)
print(dict.get_feature_names())
# 預設返回sparse矩陣
print(data)
if __name__ == '__main__':
dictvec()
執行結果:其中下面的二維矩陣稱之為 one-hot 編碼
類:sklearn.feature_extraction.text.countvectorizer
方法:
countvectorizer()
返回詞頻矩
countvectorizer.
fit_transform(x,y)
x:文字或者包含
文字字串的可迭代物件
返回值:返回
sparse矩陣
countvectorizer
.inverse_transform
(x)
x:array
陣列或者
sparse矩陣
返回值:轉換之前資料格式
countvectorizer.get_feature_names()
返回值:單詞列表
具體實現 **:
from sklearn.feature_extraction.text import countvectorizer
def textvc():
"""對文字進行特徵值化"""
cv = countvectorizer()
data = ["life is short,i like python",
"life is too long,i dislike python"]
data = cv.fit_transform(data)
# 特徵名稱 統計所有非乙個字母的詞
print(cv.get_feature_names())
# 例項化無法新增引數,用toarray依然可以實現矩陣轉化
data = data.toarray()
print(data)
執行結果:
文字抽取關於中文抽取:
主要是運用了jieba模組進行中文的分塊,是的中文片語分類
執行**塊:
from sklearn.feature_extraction.text import countvectorizer
import jieba
def textvc():
"""對文字進行特徵值化"""
cv = countvectorizer()
cop1 = jieba.cut("今天很殘酷,明天更殘酷,後天很美好,但絕對大部分是死在明天晚上,所以每個人不要放棄今天。")
# 轉換成列表
ct1 = list(cop1)
# 把列表轉換成字串
c1 = " ".join(ct1)
data = [c1]
data = cv.fit_transform(data)
"""['今天很殘酷', '但絕對大部分是死在明天晚上', '後天很美好', '所以每個人不要放棄今天', '明天更殘酷']
"""print(cv.get_feature_names())
# 例項化無法新增引數,用toarray依然可以實現矩陣轉化
data = data.toarray()
print(data)
if __name__ == '__main__':
textvc()
結果: 機器學習 特徵工程
老師有多年的網際網路從業經驗,所以講解的過程中結合了很多任務業界的應用,更加的深入淺出。資料採集 資料採集前需要明確採集哪些資料,一般的思路為 哪些資料對最後的結果 有幫助?資料我們能夠採集到嗎?線上實時計算的時候獲取是否快捷?舉例1 我現在要 使用者對商品的下單情況,或者我要給使用者做商品推薦,那...
機器學習 特徵工程
資料和特徵決定了機器學習的上限,而模型和演算法只是逼近這個上限而已。通俗的說,就是盡可能的從原始資料中獲取更多資訊,從而使得 模型達到最佳。簡而言之,特徵工程是乙個把原始資料變成特徵的過程,這些特徵可以很好的描述資料,並且利用它們建立的模型在未知資料上表現效能可以達到最優。實驗結果取決於獲取的資料 ...
機器學習特徵工程
作用 對字典資料進行特徵值化 dictvectorizer語法 例項化了乙個物件 data dict fit transform x print dict get feature names print data return none if name main dictvec 結果 分析 使用di...