机器学习之文本特征抽取
import pandas as pd
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
def work():
#连接mysql
con = pymysql.connect(host=“127.0.0.1”,user=“root”,password=“密码”,db=“数据库”)
#查询
df = pd.read_sql(“select * from 表”,con)
# 取出name字段的所有数据 转换成numpy类型 再转成list
content = np.array(df[‘name’]).tolist()
list_a=[]
for i in content:
#遍历数据 将每条内容用jieba分词
con = ’ '.join(jieba.lcut(i))
#将分词后的数据存进列表
list_a.append(con)
print(list_a)
未处理时输出效果
# 初始化 CountVectorizer stop_words 添加停用词
cv = CountVectorizer(stop_words=['北京','兼职','方向','安卓','工程师','架构师'])
# 处理数据来自jieba分词后的内容
data = cv.fit_transform(list_a)
#抽取特征类别 并对内容去重
print(cv.get_feature_names())
#查看抽取结果
print(data.toarray())
work()