呼市做网站的公司潮流设计网站

张小明 2026/1/12 23:34:35
呼市做网站的公司,潮流设计网站,如何拷贝网站代码,福州网站建设案例文章目录0 数据分析目标1 B站整体视频数据分析1.1 数据预处理1.2 数据可视化1.3 分析结果2 单一视频分析2.1 数据预处理2.2 数据清洗2.3 数据可视化3 文本挖掘#xff08;NLP#xff09;3.1 情感分析0 数据分析目标 今天向大家介绍如何使用大数据技术#xff0c;对B站的视频…文章目录0 数据分析目标1 B站整体视频数据分析1.1 数据预处理1.2 数据可视化1.3 分析结果2 单一视频分析2.1 数据预处理2.2 数据清洗2.3 数据可视化3 文本挖掘NLP3.1 情感分析0 数据分析目标今天向大家介绍如何使用大数据技术对B站的视频数据进行分析得到可视化结果。这里学长分为两个部分描述1 对B站整体视频进行数据分析2 对B站的具体视频进行弹幕情感分析选题指导, 项目分享见文末1 B站整体视频数据分析分析方向首先从总体情况进行分析之后分析综合排名top100的视频类别。总体情况部分包括各分区播放量情况。各区三连硬币、收藏、点赞情况。弹幕、评论、转发情况。绘制综合词云图查看关键词汇。综合排名top100部分包括5. top100类别占比。6. top100播放量情况。7. 硬币、收藏、点赞平均人数分布。8. 各分区平均评论、弹幕、转发量情况。1.1 数据预处理这里主要是进行查看数据信息、空值、重复值以及数据类型但由于数据很完整这里不再做过多操作。对数据进行拆分、聚合方便之后各项分析由于“区类别”列中的“全站”是各分类中排名靠前的视频会出现重复数据因此对其进行去除。df.info()df.isnull().count()df.nunique().count()df.dtypes#剔除全区排名df_nalldf.loc[df[区类别]!全站]df_nall[区类别].value_counts()#按分数进行排序ascdf_top100df_nall.sort_values(by分数,ascendingFalse)[:100]df_typedf_nall.drop([作者,视频编号,标签名称,视频名称,排名],axis1)gp_typedf_type.groupby(区类别).sum().astype(int)type_allgp_type.index.tolist()1.2 数据可视化各分区播放情况play[round(i/100000000,2)foriingp_type[播放次数].tolist()]# bar (Bar()# .add_xaxis(type_all)# .add_yaxis(, play)# .set_global_opts(# title_optsopts.TitleOpts(title各分区播放量情况),# yaxis_optsopts.AxisOpts(name次/亿),# xaxis_optsopts.AxisOpts(name分区,axislabel_opts{rotate:45})# )# )# bar.render_notebook()pie(Pie().add(,[list(z)forzinzip(type_all,play)],radius[40%,75%],).set_global_opts(title_optsopts.TitleOpts(title各分区播放量情况 单位亿次),legend_optsopts.LegendOpts(orientvertical,pos_top15%,pos_left2%),).set_series_opts(label_optsopts.LabelOpts(formatter{b}: {c})))pie.render_notebook()播放量排名前三的分别是生活类、动画类、鬼畜类。其中动画类和鬼畜类这两个是B站的特色。第三、四位是音乐类和科技类。各区三连量情况可视化coin_all[round(i/1000000,2)foriingp_type[硬币数].tolist()]like_all[round(i/1000000,2)foriingp_type[点赞数].tolist()]favourite_all[round(i/1000000,2)foriingp_type[喜欢人数].tolist()]defbar_base()-Bar:c(Bar().add_xaxis(type_all).add_yaxis(硬币,coin_all).add_yaxis(点赞,like_all).add_yaxis(收藏,favourite_all).set_global_opts(title_optsopts.TitleOpts(title各分区三连情况),yaxis_optsopts.AxisOpts(name次/百万),xaxis_optsopts.AxisOpts(name分区,axislabel_opts{rotate:45})))returnc bar_base().render_notebook()虽然生活类投币和点赞数依然是不可撼动的但是收藏数却排在动画之后科技类收藏升至第四位。弹幕、评论、三联情况danmaku_all[round(i/100000,2)foriingp_type[弹幕数].tolist()]reply_all[round(i/100000,2)foriingp_type[评论数].tolist()]share_all[round(i/100000,2)foriingp_type[转发数].tolist()]line(Line().add_xaxis(type_all).add_yaxis(弹幕,danmaku_all,label_optsopts.LabelOpts(is_showFalse)).add_yaxis(评论,reply_all,label_optsopts.LabelOpts(is_showFalse)).add_yaxis(转发,share_all,label_optsopts.LabelOpts(is_showFalse)).set_global_opts(title_optsopts.TitleOpts(title弹幕、评论、转发情况),tooltip_optsopts.TooltipOpts(triggeraxis,axis_pointer_typecross),yaxis_optsopts.AxisOpts(name人数 单位十万),xaxis_optsopts.AxisOpts(name时间(日),axislabel_opts{rotate:45})))line.render_notebook()B站搜索词云图tag_list,.join(df_nall[标签名称]).split(,)tags_countpd.Series(tag_list).value_counts()wordcloud(WordCloud().add(,[list(z)forzinzip(tags_count.index,tags_count)],word_size_range[10,100]).set_global_opts(title_optsopts.TitleOpts(title热门标签)))wordcloud.render_notebook()硬币、收藏、点赞平均人数分布gp_triple_qualitydf_top100.groupby(区类别)[[硬币数,喜欢人数,点赞数,]].mean().astype(int)gp_indexgp_triple_quality.index.tolist()gp_coingp_triple_quality[硬币数].values.tolist()gp_favoritegp_triple_quality[喜欢人数].values.tolist()gp_likegp_triple_quality[点赞数].values.tolist()max_nummax(gp_triple_quality.values.reshape(-1))defradar_base()-Radar:c(Radar().add_schema(schema[opts.RadarIndicatorItem(namegp_index[0],max_600000),opts.RadarIndicatorItem(namegp_index[1],max_600000),opts.RadarIndicatorItem(namegp_index[2],max_600000),opts.RadarIndicatorItem(namegp_index[3],max_600000),opts.RadarIndicatorItem(namegp_index[4],max_600000),opts.RadarIndicatorItem(namegp_index[5],max_600000),opts.RadarIndicatorItem(namegp_index[6],max_600000),opts.RadarIndicatorItem(namegp_index[7],max_600000),opts.RadarIndicatorItem(namegp_index[8],max_600000),]).add(硬币数,[gp_coin],color#40e0d0).add(喜欢人数,[gp_favorite],color#1e90ff).add(点赞数,[gp_like],color#b8860b).set_series_opts(label_optsopts.LabelOpts(is_showFalse),linestyle_optsopts.LineStyleOpts(width3,type_dotted),).set_global_opts(title_optsopts.TitleOpts(title硬币、收藏、点赞平均人数分布)))returnc radar_base().render_notebook()生活区的平均投币和点赞量依然高于动画区。投币、点赞、收藏最高的分区分别是生活、影视、时尚。除了时尚区外其他分区的收藏量均低于投币和点赞且时尚区的收藏量是远高其点赞和投币量。1.3 分析结果从数据可视化中可以看到播放量排名前三的分别是生活类、动画类、鬼畜类让人诧异的是以动漫起家的B站播放量最多的视频分类竟然是生活类节目。对比总体各分类播放情况top100各类占比基本保持不变。生活类的平均投币和点赞量依然高于动画类。投币、点赞、收藏最高的分区分别是生活、影视、时尚。除了时尚区外其他分区的收藏量均低于投币和点赞且时尚区的收藏量是远高其点赞和投币量。2 单一视频分析2.1 数据预处理B站爬虫代码Demoimportrequests,csv,timeimportsysfrombs4importBeautifulSoupasBS获取网页内容defrequest_get_comment(url):headers{User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko),Cookie:LIVE_BUVIDAUTO7215383727315695; stardustvideo1; rpdidkwxwwoiokwdoskqkmlspw; fts1540348439; sidalz55zmj; CURRENT_FNVAL16; _uuid08E6859E-EB68-A6B3-5394-65272461BC6E49706infoc; im_notify_type_649154450; UM_distinctid1673553ca94c37-0491294d1a7e36-36664c08-144000-1673553ca956ac; DedeUserID64915445; DedeUserID__ckMd5cc0f686b911c9f2d; SESSDATA7af19f78%2C1545711896%2Cb812f4b1; bili_jctdc9a675a0d53e8761351d4fb763922d5; BANGUMI_SS_5852_REC103088; buvid3AE1D37C0-553C-445A-9979-70927B6C493785514infoc; fingeredc6ecda; CURRENT_QUALITY80; bp_t_offset_64915445199482032395569793; _dfcaptcha44f6fd1eadc58f99515d2981faadba86}responserequests.get(urlurl,headersheaders)soupBS(response.text.encode(response.encoding).decode(utf8),lxml)resultsoup.find_all(d)iflen(result)0:returnresult all_list[]foriteminresult:barrage_listitem.get(p).split(,)barrage_list.append(item.string)barrage_list[4]time.ctime(eval(barrage_list[4]))all_list.append(barrage_list)returnall_list将秒转化为固定格式时分秒defsec_to_str(second):secondeval(second)m,sdivmod(second,60)h,mdivmod(m,60)dtEventTime%02d:%02d:%02d%(h,m,s)returndtEventTime主函数defmain():sys.setrecursionlimit(1000000)url_list[]cid_list[16980576,16980597,16548432,16483358,16740879,17031320,17599975,18226264,17894824,18231028,18491877,18780374]tableheader[弹幕出现时间,弹幕格式,弹幕字体,弹幕颜色,弹幕时间戳,弹幕池,用户ID,rowID,弹幕信息]最新弹幕文件foriinrange(12):urlhttps://comment.bilibili.com/%d.xml%cid_list[i]url_list.append(url)file_namenow{}.csv.format(i1)withopen(file_name,w,newline,errorsignore)asfd:commentrequest_get_comment(url)writercsv.writer(fd)# writer.writerow(tableheader)ifcomment:forrowincomment:print(row)#writer.writerow(row)delcomment按照集数取出弹幕链接进行爬虫获取弹幕记录并保存到csv文件foriinrange(12):file_named{}.csv.format(i1)forjinrange(1,13):fordateinrange(2):barrage_urlfirst_barrage_url.format(cid_list[i],%02d%j,%02d%(1date*14))withopen(file_name,a,newline,errorsignore)asfd:writercsv.writer(fd)writer.writerow(tableheader)final_listrequest_get_comment(barrage_url)iffinal_list:forrowinfinal_list:writer.writerow(row)del(final_list)if__name____main__:main()2.2 数据清洗导入数据分析库#数据处理库importnumpyasnpimportpandasaspdimportglobimportreimportjieba#可视化库importstylecloudimportmatplotlib.pyplotaspltimportseabornassns%matplotlib inlinefrompyecharts.chartsimport*frompyechartsimportoptionsasoptsfrompyecharts.globalsimportThemeTypefromIPython.displayimportImage#文本挖掘库fromsnownlpimportSnowNLPfromgensimimportcorpora,models合并弹幕数据csv_listglob.glob(/danmu/*.csv)print(共发现%s个CSV文件%len(csv_list))print(正在处理............)foriincsv_list:fropen(i,r).read()withopen(danmu_all.csv,a)asf:f.write(fr)print(合并完毕)重复值、缺失值等处理#error_bad_lines参数可忽略异常行dfpd.read_csv(./danmu_all.csv,headerNone,error_bad_linesFalse)dfdf.iloc[:,[1,2]]#选择用户名和弹幕内容列dfdf.drop_duplicates()#删除重复行dfdf.dropna()#删除存在缺失值的行df.columns[user,danmu]#对字段进行命名清洗后数据如下所示数据去重机械压缩去重即数据句内的去重我们发现弹幕内容存在例如啊啊啊啊啊这种数据而实际做情感分析时只需要一个“啊”即可。#定义机械压缩去重函数defyasuo(st):foriinrange(1,int(len(st)/2)1):forjinrange(len(st)):ifst[j:ji]st[ji:j2*i]:kjiwhilest[k:ki]st[ki:k2*i]andklen(st):kki stst[:j]st[k:]returnst yasuo(st啊啊啊啊啊啊啊)应用以上函数对弹幕内容进行句内去重。df[danmu]df[danmu].apply(yasuo)特殊字符过滤另外我们还发现有些弹幕内容包含表情包、特殊符号等这些脏数据也会对情感分析产生一定影响。特殊字符直接通过正则表达式过滤匹配出中文内容即可。df[danmu]df[danmu].str.extract(r([\u4e00-\u9fa5]))dfdf.dropna()#纯表情直接删除另外过短的弹幕内容一般很难看出情感倾向可以将其一并过滤。dfdf[df[danmu].apply(len)4]dfdf.dropna()2.3 数据可视化数据可视化分析部分代码本公众号往期原创文章已多次提及本文不做赘述。从可视化图表来看网友对《沉默的真相》还是相当认可的尤其对白宇塑造的正义形象江阳提及频率远高于其他角色。整体弹幕词云主演提及3 文本挖掘NLP3.1 情感分析情感分析是对带有感情色彩的主观性文本进行分析、处理、归纳和推理的过程。按照处理文本的类别不同可分为基于新闻评论的情感分析和基于产品评论的情感分析。其中前者多用于舆情监控和信息预测后者可帮助用户了解某一产品在大众心目中的口碑。目前常见的情感极性分析方法主要是两种基于情感词典的方法和基于机器学习的方法。本文主要运用Python的第三方库SnowNLP对弹幕内容进行情感分析使用方法很简单计算出的情感score表示语义积极的概率越接近0情感表现越消极越接近1情感表现越积极。df[score]df[danmu].apply(lambdax:SnowNLP(x).sentiments)df.sample(10)#随机筛选10个弹幕样本数据整体情感倾向plt.rcParams[font.sans-serif][SimHei]# 设置加载的字体名plt.rcParams[axes.unicode_minus]False# 解决保存图像是负号-显示为方块的问题plt.figure(figsize(12,6))#设置画布大小ratedf[score]axsns.distplot(rate,hist_kws{color:green,label:直方图},kde_kws{color:red,label:密度曲线},bins20)#参数color样式为salmonbins参数设定数据片段的数量ax.set_title(弹幕整体情感倾向 绘图「菜J学Python」公众号)plt.show观众对主演的情感倾向mapping{jiangyang:白宇|江阳,yanliang:廖凡|严良,zhangchao:宁理|张超,lijing:谭卓|李静,wengmeixiang:李嘉欣|翁美香}forkey,valueinmapping.items():df[key]df[danmu].str.contains(value)average_valuepd.Series({key:df.loc[df[key],score].mean()forkeyinmapping.keys()})print(average_value.sort_values())由各主要角色情感得分均值可知观众对他们都表现出积极的情感。翁美香和李静的情感得分均值相对高一些难道是男性观众偏多江阳的情感倾向相对较低可能是观众对作为正义化身的他惨遭各种不公而鸣不平吧。主题分析这里的主题分析主要是将弹幕情感得分划分为两类分别为积极类得分在0.8以上和消极类得分在0.3以下然后再在各类里分别细分出5个主题有助于挖掘出观众情感产生的原因。首先筛选出两大类分别进行分词。#分词data1df[danmu][df[score]0.8]data2df[danmu][df[score]0.3]word_cutlambdax: .join(jieba.cut(x))#以空格隔开data1data1.apply(word_cut)data2data2.apply(word_cut)print(data1)print(----------------------)print(data2)123456789首先筛选出两大类分别进行分词。#去除停用词stoppd.read_csv(/菜J学Python/stop_words.txt,encodingutf-8,headerNone,septipdm)stop[ ,]list(stop[0])#print(stop)pospd.DataFrame(data1)negpd.DataFrame(data2)pos[danmu_1]pos[danmu].apply(lambdas:s.split( ))pos[danmu_pos]pos[danmu_1].apply(lambdax:[iforiinxifi.encode(utf-8)notinstop])#print(pos[danmu_pos])neg[danmu_1]neg[danmu].apply(lambdas:s.split( ))neg[danmu_neg]neg[danmu_1].apply(lambdax:[iforiinxifi.encode(utf-8)notinstop])其次对积极类弹幕进行主题分析。#正面主题分析pos_dictcorpora.Dictionary(pos[danmu_pos])#建立词典#print(pos_dict)pos_corpus[pos_dict.doc2bow(i)foriinpos[danmu_pos]]#建立语料库pos_ldamodels.LdaModel(pos_corpus,num_topics5,id2wordpos_dict)#LDA模型训练print(正面主题分析)foriinrange(5):print(topic,i1)print(pos_lda.print_topic(i))#输出每个主题print(-*50)结果如下最后对消极类弹幕进行主题分析。#负面主题分析neg_dictcorpora.Dictionary(neg[danmu_neg])#建立词典#print(neg_dict)neg_corpus[neg_dict.doc2bow(i)foriinneg[danmu_neg]]#建立语料库neg_ldamodels.LdaModel(neg_corpus,num_topics5,id2wordneg_dict)#LDA模型训练print(负面面主题分析)forjinrange(5):print(topic,j1)print(neg_lda.print_topic(j))#输出每个主题print(-*50)结果如下 项目分享:大家可自取用于参考学习获取方式见文末!
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站路径问题自己建网站难吗

SGMG-09A6W-YG1 伺服电机SGMG-09A6W-YG1 是一款高性能工业伺服电机,适用于精密控制场合,如数控机床、工业机器人、自动化生产线及其他高精度机械设备。主要特点:高精度反馈:配备编码器,实现位置、速度和方向的精确控制…

张小明 2026/1/10 11:33:41 网站建设

四川盼之网络科技官网鞍山网站建设优化

LangFlow高校合作项目开启:推动AI教育普及 在人工智能技术飞速发展的今天,大语言模型(LLM)已不再是实验室里的神秘存在,而是逐渐渗透进科研、教学乃至日常学习的各个环节。然而,一个现实问题始终困扰着高校…

张小明 2026/1/10 11:14:34 网站建设

国内建网站公司wordpress表单提交路径

Perseus终极指南:5分钟解锁碧蓝航线隐藏功能 【免费下载链接】Perseus Azur Lane scripts patcher. 项目地址: https://gitcode.com/gh_mirrors/pers/Perseus 还在为碧蓝航线游戏体验不够完美而烦恼?Perseus作为一款专为碧蓝航线设计的脚本补丁库…

张小明 2026/1/10 11:14:36 网站建设

建设管理网站百度大搜

Picocrypt 终极使用指南:免费加密工具快速上手 【免费下载链接】Picocrypt A very small, very simple, yet very secure encryption tool. 项目地址: https://gitcode.com/gh_mirrors/pi/Picocrypt Picocrypt是一款极其简单却极其安全的免费加密工具&#x…

张小明 2026/1/10 11:14:43 网站建设

注册网站会员违法wordpress置顶文章调用

第一章:传统RPA的局限性与挑战 尽管机器人流程自动化(RPA)在提升业务效率方面取得了显著成果,但其传统实现方式仍面临诸多局限性与挑战。这些限制不仅影响了系统的可维护性和扩展能力,也制约了企业在复杂场景下的自动化…

张小明 2026/1/10 11:14:41 网站建设