textblob文本情感分析实战
环境搭建和准备工作: 1. 安装Python和pip:首先需要安装Python和pip,可以从Python官方网站下载并安装对应版本的Python。安装完成后,打开命令行窗口,输入`pip install textblob`安装TextBlob库。 2. 下载NLTK数据:TextBlob依赖NLTK数据,需要下载一些语料库和模型。在命令行窗口中输入`python -m textblob.download_corpora`,下载所需的数据。 依赖的类库: 1. TextBlob:一个用于处理文本数据的Python库,提供文本情感分析、文本处理、自然语言处理等功能。 2. NLTK:一个用于自然语言处理的Python库,TextBlob使用了其中的一些数据。 数据集:TextBlob自带了一些示例数据集,可以用于情感分析的训练和测试。 下面是一个完整的样例,对给定的句子进行情感分析: ```python from textblob import TextBlob # 创建一个TextBlob对象 blob = TextBlob("I love this place. It's amazing.") # 获取情感极性(Polarity)和主观性(Subjectivity)评分 polarity = blob.sentiment.polarity subjectivity = blob.sentiment.subjectivity # 打印情感分析结果 print("Polarity:", polarity) print("Subjectivity:", subjectivity) # 判断情感极性,输出相应的情感分类 if polarity > 0: print("Positive sentiment") elif polarity < 0: print("Negative sentiment") else: print("Neutral sentiment") ``` 运行上述代码,输出如下结果: ``` Polarity: 0.625 Subjectivity: 0.6 Positive sentiment ``` 源码说明: 1. 首先导入TextBlob类。 2. 创建一个TextBlob对象,并传入要进行情感分析的文本。 3. 使用`sentiment.polarity`获取情感极性评分,范围为[-1, 1],值越大表示情感越积极,值越小表示情感越消极。 4. 使用`sentiment.subjectivity`获取主观性评分,范围为[0, 1],值越大表示越主观,值越小表示越客观。 5. 根据情感极性值的正负判断句子的情感分类。