数据蛙数据分析每周作业

《疯狂数据分析》第一周成员学习情况分析

2018-12-17  本文已影响247人  晓迦

背景

近期,群主凡人求索和他的小伙伴们一起组织了疯狂数据分析小组,通过有计划的输入,每周总结一篇数据类文章,分别投稿到 疯狂数据分析专题 ,并坚持一年时间。
组长上周发布的作业为制定数据分析学习计划,并发布在疯狂数据分析专栏,截止时间为:2018年12月17号12点。
本篇报告通过收集疯狂数据分析专栏成员交作业的情况,对学员学习情况进行分析。

数据获取

获取数据方法借鉴了群主凡人求索的文章 数据分析实战---通过爬虫管理社群作业
基本思路:requests+BeautifulSoup+pymysql,将爬取到的数据保存到MySQL中。
爬取数据字段:name:简书用户ID title:文章标题 publish_time:发布时间 word_age 字数

数据导入

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

import pymysql
dbconn = pymysql.connect(host='localhost',database='spiders',user='root',password='123',port=3306,charset='utf8')
sqlcmd = "select * from exercise2"
data = pd.read_sql(sqlcmd,dbconn)
data.info()
data.head()
data.name.nunique()
整体情况
数据样本.PNG

截止到12月17号上午10点疯狂数据分析专栏共收录了69篇文章,共有51名成员在专栏上发布了他们的学习计划。

数据清洗

发布时间

from dateutil.parser import parse
data.publish_time = data.publish_time.str.strip('*') #清楚发布时间里面多余的*
for i in data.publish_time:
    i = parse(i)                
data.publish_time = pd.to_datetime(data.publish_time)  #将发布时间转化为datetime类型
data['date'] = data.publish_time.dt.day
data['hour'] = data.publish_time.dt.hour

字数

data.word_age = data.word_age.str.strip('字数') #删除字数字段多余的“字数”
data.word_age = data.word_age.astype('int')  #将类型转换为int类型

数据分析

提交作业时间

第一周成员提交作业时间

大部分成员在15号和16号提交作业,也就是上周六和周天的时候。


一天中提交作业次数变化对比

作业提交次数较大的集中在两个时间段:上午11点-12点,晚上22点-24点

文章发布篇数

data.groupby(['name'])['title'].count().sort_values(ascending = False).head(5)
文章发布篇数.PNG

夜希辰和我们的群主大大凡人求索在上一周中都输出了5篇文章。1点点De小任性、,Lykit01,肖月_1d28发布了3篇文章。大部分成员都只发布了1篇文章,完成基本任务。

文章字数

data.groupby(['name'])['word_age'].sum().describe()
文章字数.PNG

累计文章字数最多的在上一周中已写了8617字,最少的写了64个。可以看出差别蛮大!平均每位成员的写作字数为903字。看看你达到平均水平了吗? 小佳我可以很自豪的说,嗯。。 及格了!

data.groupby(['name'])['word_age'].sum().sort_values(ascending = False).head(5)
累计写作字数.PNG

累计写作字数最多的是夜希辰8617个字,其次是Lykit01,1点点De小任性。

文章标题词云分析

from wordcloud import WordCloud
import jieba
text = ''
for line in data['title']:
    text += line
cut_text = ' '.join(jieba.cut(text))
cloud = WordCloud(background_color='white',font_path = './fonts/simhei.ttf',max_words = 1000)
word_cloud = cloud.generate(cut_text)
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
文章标题词云

不用多说 学习计划 数据分析 Python SQL 统计学
符合组长定下的目标,第一周:制定数据分析学习计划

总结

上一篇下一篇

猜你喜欢

热点阅读