2019年大数据网络赛 第六部分:综合题

题目:

4 统计关于《上海堡垒》话题的舆情走势,已知其上映时间为2019-08-09。(本题可以使用你擅长的编程语言和框架)

解析:由题目可知,数据是包含上海堡垒和烈火英雄的,但题目要求只统计有关上海堡垒的,所以要从数据中将所有有关上海堡垒的提取出来,这时我们可以使用一种提取我们所需要内容的代码:如下: 

 bool = df["x"].str.contains("y")

filter_data = df[bool]
代码的意思是:提取x中包含y的内容,生成新的代码,我们也可以将它重新放入一个文件中,通过如下读取的方式:filter_data.to_csv("new4")

error_bad_lines:布尔值默认为True # 默认情况下,具有太多字段的行(例如,带有太多逗号的csv行)将引发异常, # 并且不会返回任何DataFrame。如果为False,则这些“坏行”将从返回的DataFrame中删除。

4.1 讨论热度的计算,按照日期对数据集中每日总评论数计算,按照日期排序(请提供完整代码和结果截图3分)

代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pandas import Series,DataFrame

df = pd.read_csv("new5",error_bad_lines=False)

s = df[["发布时间","评论数"]].sort_values(by="发布时间")
x = s["发布时间"].value_counts()
s1 = (s["发布时间"]=="2019-08-09").sum()
print("2019-08-09",s1)
s2 = (s["发布时间"]=="2019-08-10").sum()
print("2019-08-10",s2)
s3 = (s["发布时间"]=="2019-08-11").sum()
print("2019-08-11",s3)
s4 = (s["发布时间"]=="2019-08-12").sum()
print("2019-08-12",s4)
s5 = (s["发布时间"]=="2019-08-13").sum()
print("2019-08-13",s5)
s6 = (s["发布时间"]=="2019-08-15").sum()
print("2019-08-15",s6)
s7 = (s["发布时间"]>"2019-8-15").sum()
print("2019-昨天",s7)

结果截图如下:

4.2 传播影响的计算,计算出转发次数最多的前5条文章,并列出该文章博主的粉丝数(请提供完整代码和结果截图3分)

代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pandas import Series,DataFrame

df = pd.read_csv("new3.csv",error_bad_lines=False)

# 这两行代码是只获取含有上海堡垒的博客内容,通过这种方式可以获取我们想要的任何部分内容
bool = df["博客内容"].str.contains("上海堡垒")
filter_data = df[bool]

filter_data = filter_data.loc[filter_data["发布时间"]>='2019-08-09']
s = filter_data[["id","转发数","粉丝数"]].sort_values(by="转发数",ascending=False).head()
print(s)
结果截图如下:

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值