Python 数据分析(一)[MAC]
来源:互联网 发布:reveur 知乎 编辑:程序博客网 时间:2024/06/03 19:24
数据:
bit.ly 的 1.usa.gov数据
读取:
### read dataimport jsonpath = 'pydata-book-master/ch02/usagov_bitly_data2012-03-16-1331923249.txt'records = [json.loads(line) for line in open(path)]
任务:
主要使用python代码和pandas库等方式来计算各时区对应的数量,最后尝试用plot来绘制top10时区对应的数据。
方式一:自定义python函数
### own functions# func1: count each time_zone def get_counts(sequence): counts = {} for x in sequence:if x in counts: counts[x] += 1else: counts[x] = 1 return counts# func2: count each time_zonefrom collections import defaultdictdef get_counts2(sequence): counts = defaultdict(int) for x in sequence:counts[x] += 1 return counts # func3: get top-n countsdef top_counts(count_dict, n=10): value_key_pairs = [(count, tz) for tz, count in count_dict.items()] value_key_pairs.sort() return value_key_pairs[-n:]
备注:
可以看出使用标准库defaultdict来初始化字典对象时,可以不用判断该元素‘x’是否存在,默认不存在时,会自动初始化该元素,并将对应的缺省值赋值为0。
#### method 1: own python functionstime_zones = [rec['tz'] for rec in records if 'tz' in rec]counts = get_counts(time_zones)top_counts(counts)
方式二:利用 pandas 库中的 DataFrame
#### method 2: pandas library from pandas import DataFrame, Seriesimport pandas as pd; import numpy as npframe = DataFrame(records)tz_counts = frame['tz'].value_counts()
备注:
其实这里:
from pandas import DataFrame, Series
import pandas as pd; import numpy as np
可以简化为:
from pandas import DataFrame
其他的功能暂时未使用到
处理缺省值:
### deal with missing value clean_tz = frame['tz'].fillna('Missing')clean_tz[clean_tz == ''] = 'Unknown'tz_counts = clean_tz.value_counts()
绘制:
### draw tz_counts[:10].plot(kind='barh', rot=0)效果如下:
备注:
再如果需要对显示的图像进行调整的话,可以点击'Configure subplots',弹出的窗口中可以对绘画区域的上下左右等进行调整。
比如图中纵坐标的文字可能显示不完整,则可以调整'Borders->left'的值来达到合适的效果,若放弃已调整的内容,则可以选择'Reset'按钮即可。
说明:
本文内容主要来自《利用Python进行数据分析》一书,
笔者以学习的方式进行整理,相关数据链接:http://github.com/pydata/pydata-book
转载请注明。
1 0
- Python 数据分析(一)[MAC]
- Python数据分析(一)
- python基础数据分析--pandas(一)
- # Python数据分析学习笔记(一)
- python数据分析实践(一)
- Python数据分析学习笔记(一)
- Python数据分析学习笔记(一)
- python-数据分析 numpy应用(一)
- 利用Python进行数据分析(一)
- python数据分析笔记(1):搭建python的数据分析环境(Mac系统下)
- Python与数据分析(一)------Python简介与安装
- python数据分析之KDD大赛数据(一)
- Python 金融数据分析 (一)—— 股票数据
- 利用Python数据分析:数据的规整化(一)
- 《python数据分析读书笔记》--- (一)数据探索
- 【Python学习】Mac下用python+pypcap+dpkt抓取IP数据包并分析(一)
- 《利用python进行数据分析》学习笔记(一)
- python数据分析之numpy初始化(一)
- 关于filter拦截请求及chain.doFilter(request, response)的理解
- oracle基础:创建表和设置主键,修改属性等
- [省选前题目整理][BZOJ 2434][NOI 2011]阿狸的打字机(AC自动机+fail树+DFS序+树状数组)
- 对传入where条件的sql语句进行参数化处理
- (6.1.3)存储器管理
- Python 数据分析(一)[MAC]
- 字符过滤拷贝
- IOS 点语法 release 与retain self 的解析
- 黑马程序员——面向对象的封装以及set和get方法
- C++引用作为函数参数
- Linux文件系统简介02
- 字符串匹配KMP算法
- 需要问师兄的问题
- java泛型编程