概述
从网上下来的数据文件,先读取文件中的第一行查看是什么数据类型
path="usagov_data.txt"
open(path).readline()
结果是:
从上面的数据格式可看出是json格式,在python中有许多内置或第三方模块可以将json转化成python的字典对 象,将使用json模块及loads函数逐行加载该数据文件:
import json
path="usagov_data.txt"
records=[json.loads(line) for line in open(path)]
结果是:这只是records[0]
(1) 想知道该数据集中最常出现的是哪个时区:先要得到表示时区的数据,然后再计数:
time_zones=[rec['tz'] for rec in records if 'tz' in rec] #加if是因为并不是所有记录都有时区字段
结果是:
from collections import Counter
counts=Counter(time_zones)
counts.most_common(10)
结果是:
(2) 将数据转换成DataFrame数据结构
import pandas as pd
import numpy as np
frame=pd.DataFrame(records)
结果是:
(3) 在dataframe中用来计数的可以使用value_counts函数,返回得到的是Series对象
tz_counts=frame['tz'].value_counts()
结果是:
可以看到上述的数据展示中有缺失值,fillna函数可以用来替换缺失值(NA),而未知值可以通过布尔数组索引 加以替换:
clean_tz=frame['tz'].fillna('Missing')
clean_tz[clean_tz=='']='Unknown'
tz_counts=clean_tz.value_counts()
结果是:
(4) 可以得到一张水平条形图:
import matplotlib.pyplot as plt
tz_counts[:10].plot(kind='barh',rot=0)
plt.show()
结果是:
最后
以上就是甜蜜冬天为你收集整理的《利用python进行数据分析》读书笔记之案例一:来自bit.ly的1.usa.gov数据的全部内容,希望文章能够帮你解决《利用python进行数据分析》读书笔记之案例一:来自bit.ly的1.usa.gov数据所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复