from pandas import Series,DataFrame

import pandas as pd

import matplotlib as mpl

import matplotlib.pyplot as plt #导入matplotlib库

get_ipython().run_line_magic('matplotlib', 'inline')

df=pd.read_csv(r'D:\python数据分析\usagelog.csv')

df_usetimes=df.loc[:,['date','userid','times']] #提取日期、用户ID和次数3列,所有行

df_usetimes2018=df_usetimes[(df_usetimes['date']>=20180101) & (df_usetimes['date']<=20181231) ].sort_values(by='date') #提取2018年的数据

def getmonth(d):

return(int(d/100)%100 )

df_usetimes2018['date']=df_usetimes2018['date'].map(getmonth)

def weekdayname_to_weekdaynumbe(dayname):

if dayname == '星期一':

return('1')

elif dayname == '星期二':

return('2')

elif dayname == '星期三':

return('3')

elif dayname == '星期四':

return('4')

elif dayname == '星期五':

return('5')

elif dayname == '星期六':

return('6')

elif dayname == '星期日':

return('7')

else:

return('')

df['day']=df['day'].map(weekdayname_to_weekdaynumbe)

df.sort_values(by=['day','date']) #按照星期、日期先后排序

#透视表,各个用户在2018年一周7天里每天批注量的分类汇总

df_pivot_table=df.pivot_table(index='userid',columns='day',values='times',aggfunc='sum',margins=True,fill_value=0,margins_name='合计')

df_pivot_table

#交叉表,反映各个用户在2018年一周7天内做批量邮编批注的频率。

df_cross=pd.crosstab(index=df['userid'],columns=df['day'])

#用matplotlib画2018年每月批注量对比图

df_2018_sum=df_usetimes2018.groupby(by='date').sum()

plt.rcParams['font.sans-serif']=['SimHei']

plt.rcParams['axes.unicode_minus']=False

plt.title('2018年每月批注量对比图')

plt.xlabel('月份')

plt.ylabel('次数')

plt.bar(df_2018_sum.index,df_2018_sum['times'],color='red')

#累计批注量折线图

plt.plot(df_2018_sum.cumsum().index,df_2018_sum.cumsum()['times'],color='red',linestyle=':',marker='x')

python透视表画图_透视表、交叉表、matplotlib作图相关推荐

  1. mysql 交叉表 存储过程_用于生成交叉表的存储过程的存储过程

    以前总是在网上搜一些交叉表生成的相关代码 但是使用起来总是很复杂 看看 刚出炉的东西对你来说是不是有所帮助 :_) 先看看下一个生成的存储过程 :SQLServer2000 Create Proced ...

  2. 在MySQL中实现交叉表查询2(动态交叉表)

    在MySQL中实现交叉表查询2(动态交叉表) 交叉表分为静态交叉表和动态交叉表.其中静态交叉表中的列是固定的,因此相对容易实现:而动态交叉表中的列需要动态生成. 一.静态交叉表的实现 参见上一篇文章: ...

  3. 在MySQL中实现交叉表查询1(静态交叉表)

    在MySQL中实现交叉表查询1(静态交叉表) 一.什么是交叉表 交叉表查询是将来源于某个表中的字段进行分组,一组列在交叉表左侧,一组列在交叉表上部,并在交叉表行与列交叉处显示表中某个字段的各种计算值. ...

  4. python透视表画图_用Python实现数据的透视表的方法

    在处理数据时,经常需要对数据分组计算均值或者计数,在Microsoft Excel中,可以通过透视表轻易实现简单的分组运算.而对于更加复杂的分组运算,Python中pandas包可以帮助我们实现. 1 ...

  5. crosstab交叉表_透视图和交叉表

    透视图和交叉表 在数据分析中,数据透视表是常见的工具之一,需要根据行或列对数据进行各个维度数据的汇总,在pandas中,提供了相关函数解决此类问题 透视图相关函数 pivot_table(data,i ...

  6. java画熊猫_从熊猫交叉表制作气泡图

    我有一个4列和几千行的pandas数据帧 . 所有条目都是True或False . 让我们调用数据帧'df'和列'c0','c1','c2'和'c3' . 我感兴趣的是有多少行有2 ^ 4 = 16个 ...

  7. mysql交叉表的构造知识_[数据库]MySQL交叉表

    [数据库]MySQL交叉表 0 2012-01-11 17:00:23 在某些数据库中有交叉表,但在MySQL中却没有这个功能,但网上看到有不少朋友想找出一个解决方法,特发贴集思广义. http:// ...

  8. python自定义函数画图_利用Python绘图和可视化(长文慎入)

    Python有许多可视化工具,但是我主要讲解matplotlib(http://matplotlib.sourceforge.net).此外,还可以利用诸如d3.js(http://d3js.org/ ...

  9. excel子表与母表筛选_滚动浏览Excel表中的筛选器项目

    excel子表与母表筛选 To see specific data in an Excel Table, you can select an item from the drop down filte ...

  10. java动态交叉表,SqlServer如何生成动态交叉表查询

    为了说明问题,我们用SqlServer自带的事例数据库(Northwind)来进行验证,所有的例子请放到Northwind中运行,我可能会省略Use语句,所引用的表,都是Northwind中的,下面我 ...

最新文章

  1. centos llvm安装_在CentOS上编译安装llvm-3.8.1详细教程
  2. 场景创新,推动金融行业数字化转型
  3. html怎么设置z值,css z-index属性怎么用
  4. php根据id查找条件怎么写_thinkphp where()条件查询
  5. VS2008SP1中CDialogEx的使用问题及解决
  6. jquery跨域请求示例
  7. python 下载文件-Python实现http文件下载
  8. 使用Websocket框架之GatewayWorker开发电商平台买家与卖家实时通讯
  9. VS2013+cuda8.0配置及案例
  10. git学习笔记-(10-分支例子)
  11. hive下载安装与配置
  12. 实现读取txt文本 统计文本单词出现次数
  13. Games 图形学 L2线性代数
  14. java怎么停止工作_Java停止工作怎么办
  15. 智慧高铁、智慧机场对护照阅读器的应用 SDK说明
  16. Tomcat服务器的安装使用
  17. mysql练习答案,mysql练习语句
  18. ✔B【OPA1602 】【双运放】高性能 低噪声 极低失真度运放模块 35MHz带宽
  19. mc服务器常用指令_MC服务器新手指令大全
  20. 张帅/斯托瑟击败捷克组合 首进大满贯女双决赛

热门文章

  1. 基于DragonBoard410C的智能管家
  2. 解决Navicat远程服务器2013-Lost connection to MYSQL server at 'waitting for initial communication packet'
  3. 基于SMTP协议的E-MAIL电子邮件发送客户端软件C#实现
  4. c语言——socket编程
  5. android编程播放音乐,Android编程实现播放音频的方法示例
  6. javaweb项目实现连续3次输错密码后禁止登录
  7. el-upload+额外的参数 , element上传功能组件及其参数的详解
  8. 考研数学一二重积分常见解题思路
  9. 《BiLSTM with Multi-Polarity Orthogonal Attention for Implicit Sentiment Analysis》论文阅读笔记
  10. golang 实现苹果内购服务端验证