当前位置: 首页 > news >正文

国外模板网站长春火车站到长春机场大巴时刻表

国外模板网站,长春火车站到长春机场大巴时刻表,我先做个网站怎么做,大连市房屋管理局官方网站刚学python爬虫的时候写了一段下载妹子图片的代码,前两天把他翻出来爬了一堆图片,现在给大家分享一下我的“使用姿势”。 爬的网站是这里 这个网站很有规律,非常适合新手学习、练手。 我在爬图片的时候不仅下载了图片,顺便收…

刚学python爬虫的时候写了一段下载妹子图片的代码,前两天把他翻出来爬了一堆图片,现在给大家分享一下我的“使用姿势”。
这里写图片描述
爬的网站是这里
这个网站很有规律,非常适合新手学习、练手。
我在爬图片的时候不仅下载了图片,顺便收割了套图的名字,人气(我理解的是访问量),喜欢(实验证明,点一下就会+1,所以我称它为点赞量),发表时间,编号;将这些内容存在数据库中,由于数据量很小,只有1000行左右,所以用个sqlite就行了,没必要用MySQL,当然写成csv,txt也是可以的。
至于怎么爬取,这不是本文的重点,本文的重点是利用python的pandas进行数据分析。
获得以上信息之后,我用jieba做了个分词,储存在数据库中,可以使用SQL语句中的alter命令在原来的表结构中新增一列。分完词之后就可以进行一波操作了。我分别用Excel和python操作了一番。
不写

Excel部分


虽然Excel处于鄙视链的倒数,但是我不怕被鄙视。
这是初始数据
这是初始数据,查看没有缺失值。解释一下标题吧:
id:索引
name:套图的名字
NOs:套图的编号
numbers:一套图中图片的数量
url:套图地址
year:发表与那一年
date:发表时间
poputarity:人气(访问量)
like:喜欢(点赞量)
words:分好的词
我们先把没用的数据隐藏(最好不要删,万一有用呢?),保留year,numbers,date,popularity,like和words就可以了,但是words成这样我们没法操作,需要对它进行分列。这是分好的数据:
这里写图片描述
先做个数据透视表,计个数,然后就可以根据需要实现数据可视化,关于数据透视表的操作百度经验一搜一大堆,我就不说了,直接上成果吧!
这里写图片描述
由上图可知,15,16,17年发图的套数和数量,虽然15年的套数比16年多了100多,但总数量并没有多多少,平均每套图的数量也在逐年上升。下面来看详细情况:
这里写图片描述
我们发现2015年套图数量多,是因为第一,第二季度发的比较多。具体是哪个月我就懒得用excel弄了,还是用python方便一些。下面是每套图中图片数量的箱线图(Excel2016可以直接画箱线图,老一点版本的也可以画出来就是比较麻烦):
这里写图片描述
均值和中位数大致重合,说明数据没有明显的偏态,16年明显比15年上升了一个台阶,16年只有一个离群值点,17年3个,15年5个。
上面这些都是用户关心的,网站运营者主要关心的是流量(虽然我不知道该网站是如何盈利的)。
这里写图片描述
可以看出,不管是点赞数还是访问量,15年的都非常小,16年和17年的都明显右偏(15年的太小,看不出来),尤其是17年的点赞量(均值比上四分位数都大,简直不可描述),这是由于17年有几个异常大的离群值,只是被我隐藏了。
此外我还用Excel做了个词频统计:
这里写图片描述
‘写真’与’性感’突破200,荣获状元和榜眼,探花被’妹子’摘下,’美女’仅比’妹子’少了12票,屈居第四。词频在100次以上的有七个。

python部分


还是python用起来得心应手,直接用pandas搞一搞就出来了。
直接上代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import sqlite3
from datetime import datetimeSQL="select * from pictures as p join names on p.id=names.id" 
#我当时存到了两个table里面,所以读的时候还要关联,也可以先读取,再用pandas的函数关联
conn=sqlite3.connect(r'G:\mqiqi\meizitu.db')
df=pd.read_sql(SQL,conn) #直接用pandas的函数将数据库中的数据写入数据框
df.info() #查看数据框的信息

这里写图片描述
可以将没用的数据用del删掉(我没删),有些数据需要转化类型,像NOs要变成字符串,不然我们调用describe方法的时候也会对它操作,year和date要由字符串变成时间格式,方便我们后续操作,另外新增一个month列,对月份进行描述统计还是比较合理的。相关代码如下:

del df['id']
df['date']=pd.to_datetime(df.date,format="%Y-%m-%d") 
#Y匹配的是四位年:2017,y匹配二位年:17
df['month']=df.date.values.astype('datetime64[M]')
df.NOs=df.NOs.values.astype('str')
df.year=pd.to_datetime(df.year,format="%Y")
df.info()

再次查看信息,发现已经变了:
这里写图片描述
输入’df.describe()’,查看一下描述统计:
这里写图片描述
这些东西在Excel中也能计算,但一想到python中只要一行代码,我就懒了。我们看一下点赞量的最大值是上四分位数的45倍左右,导致均值被拉的虚高,简直丧心病狂,实际操作中可以去掉异常值,但我不想这么做。
直接看看走势吧。

import matplotlib.lines as mlines
plt.rcParams['font.sans-serif'] = ['SimHei'] #中文字体,不然中文会显示成口
plt.figure() 
x1=df.groupby('month').popularity.sum()
x2=df.groupby('month').like.sum()
p1=x1.plot(color='b',label=u'每月总访问量')
p2=x2.plot(secondary_y=True,style='--',color='r',label=u'每月总点赞量') #设置次坐标轴
blue_line = mlines.Line2D([],[],linestyle='-',color='blue',markersize=2, label=u'每月总访问量')
red_line= mlines.Line2D([],[],linestyle='--',color='red',markersize=2, label=u'每月总点赞量')
plt.legend(handles=[blue_line,red_line],loc='upper left')
plt.grid(True)
plt.show()

得到下图:
这里写图片描述
大写的PS:这些指标都是虚荣指标,除了放出来给浏览的客户看看,没什么卵用,真正有用的指标不会给我们看到的
大体上是波动上升,其中在15年2、3、4月网站的总访问量明显较高,16年8、9月也显著增加,17年1月的点赞量异常高,应该就是那几个丧心病狂的造成的。
接下来将访问量和点赞量平均到每套图上看看:

df['rate']=df.like/df.popularity*10000*100
plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.figure() 
x1=df.groupby('month').popularity.sum()/(df.groupby('month').count().popularity)
x2=df.groupby('month').like.sum()/(df.groupby('month').count().like)
x3=df.groupby('month').rate.sum()/(df.groupby('month').count().rate)
p1=x1.plot(color='b',label=u'每月平均访问量')
p2=x2.plot(secondary_y=True,style='--',color='r',label=u'每月平均点赞量')
p3=x3.plot(secondary_y=True,style='--',color='g',label=u'每月平均点赞率')
blue_line = mlines.Line2D([],[],linestyle='-',color='blue',markersize=2, label=u'每月平均访问量')
red_line= mlines.Line2D([],[],linestyle='--',color='red',markersize=2, label=u'每月平均点赞量')
green_line=mlines.Line2D([],[],linestyle='--',color='green',markersize=2, label=u'每月平均点赞量')
plt.legend(handles=[blue_line,red_line,green_line],loc='upper left')
plt.grid(True)
plt.show()

这里添加一个新的变量rate,代表点赞率,它的数量级是万分之一,为了能和坐标轴匹配,我将它扩大了1百万倍(为什么大家看完不点赞呢?)
这里写图片描述
可以看出,15年2,3,4月平均每套图访问量并没有升高,主要原因是多发了几套图。如果我们假定一个用户对一套图只进行一次浏览,我们可以认为网站的活跃用户在此期间并没有明显的增加。至于转现率,用户留存率之类的,我搞不到数据。
点赞率也在缓缓上升,这能不能算作网民素质提高的一种表现呢?
最后放一张箱线图:
这里写图片描述
可以看出来,比Excel的好看多了,为了图形的美观,我把离群值都忽略了,右上角的是点赞率的图,只有万分之几,这究竟是道德的沦丧还是人性的悲哀。单纯从网站访问量和点赞量来看,该网站的运营情况挺好的。
我也用python做了词频图和一些条形图,和Excel的没啥差别,就不贴出来了。
说了这么多,总得给大家几张福利图片冲击一下视觉吧。
这里写图片描述
怎么样,够刺激吧!!!


第一次发文,各位大佬多多指教。

http://www.yayakq.cn/news/858868/

相关文章:

  • 网站设计制作费用多少做网站买个域名多少钱
  • 免费建设展示网站斗破苍穹制作公司
  • 做图片视频的网站有哪些网站开发服务外包合同
  • 网站内容怎么选择公司网站怎么更新需要怎么做
  • 沈阳个人做网站唐朝网站的地址
  • 电脑网站做淘宝客网络营销专员的就业前景
  • 河田镇建设局网站医疗器械分类目录2021
  • 深圳 电子商务网站开发个人网站 摄影展示
  • 网站开发设计费 怎么入账厦门专业网站设计代理
  • 长宁网站设计泰安企业网站制作
  • 上海网站建设开发制作一个ip地址做多个网站
  • 个人服务器搭建做网站建站工具word
  • 落伍者论坛 做网站深圳百度推广属于哪家公司
  • 制作网站用什么代码怎么自己创建网站免费
  • 网站建设需注意哪些事项莱州网页设计公司
  • 哪个网站可以做英文兼职建工社网校官网
  • 电子商务网站建设需求概述哈尔滨市人社app
  • 特色的南昌网站建设汽车门户网站建设
  • 自己做导航网站团购网站模板免费下载
  • 广东双语网站建设多少钱手机网站大全12345
  • 做网站为什么一定要去国外pc软件开发工具
  • 网站导航漂浮代码嘉兴seo网站推广
  • 电商网站建设与维护怎么做软文链接打开后是自定义网站
  • 都有什么网站住房和城乡建设部简称
  • 定制网站开发站长seo
  • 创建网站流程图微信网站备案
  • 怎么做动漫原创视频网站多媒体展厅公司
  • 软件用户界面设计大连网络seo公司
  • app ui设计欣赏 网站wordpress首页制作
  • 江桥网站建设企业网站建设带后台