<利用Python进行数据分析> Note 1

本文介绍如何使用Python的pandas库处理JSON数据,并通过实例演示如何读取JSON文件并统计时区分布。此外,还讨论了NumPy、SciPy等库在科学计算中的应用。

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

 

转载于:https://www.cnblogs.com/XinZhou-Annie/p/7103579.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值