<利用Python进行数据分析> Note 1
NumPy 和SciPy结合完全可以替代MATLAB的计算功能(包括其插件工具箱)
NumPy, SciPy, matplotlib以及IPython这些包含在Canopy中了。
第2章引言
来自bit.ly的1.usa.gov数据
一、JSON 数据准备
首先准备一份 JSON 数据,这份数据共有 3560 条内容, name: usagov_bitly_data2012-03-16-1331923249.txt, store in Desktop
Input:
path = '/Users/zhouxin/Desktop/usagov_bitly_data2012-03-16-1331923249.txt'
open(path).readline()
Output:
时区(tz)Timezone
用pandas对时区进行计数
DataFrame 是pandas中最重要的数据结构,它用于将数据表示为一个表格。从一组原始记录中创建DataFrame是很简单的:
test.py :
# -*- coding: utf-8-sig -*- import json path = '/Users/zhouxin/Desktop/usagov_bitly_data2012-03-16-1331923249.txt' records = [json.loads(line) for line in open(path)] def get_counts(sequence): counts = {} for x in sequence: if x in counts: counts[x] += 1 else: counts[x] = 1 return counts # from collections import defaultdict # # def get_counts2(sequence): # counts = defaultdict(int) # for x in sequence: # counts[x] += 1 # return counts def 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:]