sklearn进行情感分析

-- coding: utf-8 --

“”"
@Time : 19-9-26 下午2:39
@Author : lei
@Site :
@File : 情感分析.py
@Software: PyCharm
“”"

情感分析

from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import classification_report
import jieba
import pandas as pd
import numpy as np

data = pd.read_csv("./Train.csv", error_bad_lines=False, names=[“label”])

data.drop(0, axis=0, inplace=True)
data = np.array(data).tolist()

print(data)

data_list = [temp[0].split(’\t’) for temp in data]

print(data_list)

将得到的数据进行遍历得到目标值和特征值 并将数据进行转置

data = np.array([temp[1] for temp in data_list]).T
label = np.array([temp[0] for temp in data_list]).T

print(y_test.shape)

将字符串转换成Tf可识别的字符加空格形式

data = [" ".join(list(jieba.cut(temp))) for temp in data]

x_train, x_test, y_train, y_test = train_test_split(data, label, test_size=0.25)

print(x_train)

tf = TfidfVectorizer()
x_train = tf.fit_transform(x_train).toarray()
x_test = tf.transform(x_test).toarray()

mt = MultinomialNB(alpha=0.1)

mt.fit(x_train, y_train)
predict = mt.predict(x_test)
score = mt.score(x_test, y_test)
print(predict)
print(score)
print(classification_report(y_test, predict, target_names=[“1”, “2”, “0”, “4”, “5”]))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值