Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

WBOY
WBOYke hadapan
2023-05-07 23:58:061886semak imbas

Pengenalan

Dokumen rasmi CountVectorizer.

Vektorkan koleksi dokumen ke dalam matriks kiraan.

Jika anda tidak menyediakan kamus apriori dan tidak menggunakan penganalisis untuk melakukan beberapa jenis pemilihan ciri, maka bilangan ciri akan sama dengan perbendaharaan kata yang ditemui dengan menganalisis data.

Prapemprosesan data

Dua kaedah: 1. Anda boleh memasukkannya terus ke dalam model tanpa pembahagian perkataan 2. Anda boleh membahagikan teks bahasa Cina terlebih dahulu.

Perbendaharaan kata yang dihasilkan oleh kedua-dua kaedah akan sangat berbeza. Demonstrasi khusus akan diberikan kemudian.

import jieba
import re
from sklearn.feature_extraction.text import CountVectorizer
#原始数据
text = ['很少在公众场合手机外放',
        '大部分人都还是很认真去学习的',
        '他们会用行动来',
        '无论你现在有多颓废,振作起来',
        '只需要一点点地改变',
        '你的外在和内在都能焕然一新']
#提取中文
text = [' '.join(re.findall('[\u4e00-\u9fa5]+',tt,re.S)) for tt in text]
#分词
text = [' '.join(jieba.lcut(tt)) for tt in text]
text

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Bina model

Model kereta api

#构建模型
vectorizer = CountVectorizer()
#训练模型
X = vectorizer.fit_transform(text)

Semua perkataan: model.get_feature_names()

#所有文档汇集后生成的词汇
feature_names = vectorizer.get_feature_names()
print(feature_names)

Bukan perkataan Bersegmen Kosa kata terhasil

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Perbendaharaan kata yang dihasilkan selepas pembahagian

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Matriks mengira: X.toarray()

rreee

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

#每个文档相对词汇量出现次数形成的矩阵
matrix = X.toarray()
print(matrix)

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Indeks perbendaharaan kata: model.vocabulary_

#计数矩阵转化为DataFrame
df = pd.DataFrame(matrix, columns=feature_names)
df

Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?

Atas ialah kandungan terperinci Bagaimana untuk menggunakan CountVectorizer dalam sklearn Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam