<利用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:]

 

posted @ 2017-07-02 16:39  XinZhou_Annie  阅读(295)  评论(0编辑  收藏  举报