赞
踩
写在前面: 首次写csdn的博客, 记录一次涉及爬虫, 中文词句情感分析, 数据可视化的社会计算作业, 不过仅涉及非常粗浅的介绍和本次作业中用到的内容, 会在每个板块最后附上相应内容学习的其他博客链接.
对于2019年度的电影评分数据,电影描述以及标签信息等数据进行获取和分析,作一份电影分析报告。
要求内容:
1. 正面,负面,中性评价比率
2. 粉丝分布属性
3. 票房属性
完成作业大概分为三个板块:
1.python对excel的操作
python对excel操作的库有很多,xlrd/xlwt库,openpyxl等,笔者在这里使用的是openpyxl库
在此处只需要会用以下几个操作就行
引用openpyxl库
建议同时使用
import openpywl
from openpyxl import Workbook
wb = load_workbook('./myfile.xlsx')
#此处可以指定参数read_only为true即只读,write_only为true为只写,默认为可读可写
ws = wb.get_sheet_by_name('Sheet1')
#此处的参数就是你要的工作表的名字,大小写敏感
读写一个单元
确定了sheet以后可以对每个单元格进行处理
方法一:
a = ws.cell(row,column).value
不要忘了.value,此时a就是第row行第column单元格的数值.
也可以直接进行写
ws.cell(row,column).value = a
就把a写入了对应单元格
方法二:
a = ws['A1']
ws['A1'] = a
但是在这次作业中似乎是用row和column更方便一些
创建一个xlsx文件
wb2 = Workbook() #创建一个workbook(工作簿)
ws2 = wb2.active #这个active是取正在工作的sheet,默认是第一个sheet
然后可以按照之前的读写操作进行读写
ws.append(["director","rate","title","actor","url"])
这样可以直接写入整行数据
不过只能写到空白的行中哦
from openpyxl import Workbook
import openpyxl
wb = Workbook()
ws = wb.active
ws.append(["director","rate","title","actor","url"])
ws.cell(2,3).value = 2131
ws.append(["director","rate","title","actor","url"])
wb.save("test.xlsx")
执行以上代码得到
点击openpyxl详解了解更多有关内容
2.中文情感分析snowNLP库的使用
SnowNLP是一个python写的类库,可以方便的处理中文文本内容. 简单介绍一些简单的操作
from snownlp import SnowNLP
from snownlp import sentiment
text = '戴上口罩我最帅,我是网安小可爱'
s = SnowNLP(text)
#或者
s2 = SnowNLP(u'戴上口罩我最帅,我是网安小可爱')
a = s.words
print(a)
b = s.sentiments
print(b)
这里输出的是一个[0,1]的数据 , 表示这句话可能是积极的概率 , 不过snownlp库只能对简单的词句进行分析 , 在这个阴阳怪气的时代 , 分辨出不准确的数据也很正常(但是你可以自己训练这个库), 越靠近0则是积极的概率越小.
点击snownlp教程了解更多内容
点击snownlp训练了解训练snownlp的方法
以上知识只是基础知识,并不能直接帮你完成作业hhh,但是了解知识以后敲代码时或许思路更加开阔了
数据的处理和分析要用到的知识就是这些,数据可视化会在下一篇文章中介绍
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。