来自Bitly的usa.gov数据
1、数据说明:该数据是以json格式储存的,该数据集共有十八个维度,我在这里只做两个任务。
a. 对时区进行计数
b. 对windows以及非windows用户进行分组统计,并统计出在相同时区下Windows用户和非Windows用户的百分数占比。
#用pandas对其进行展示,并进行可视化。
import json
import pandas as pd
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
#读取json数据集并用图表格式显示
path = './datasets/bitly_usagov/example.txt'
records = [json.loads(line) for line in open(path)]
frame = pd.DataFrame(records)
#对时区进行计数(用panda 的value_counts函数进行计数)
#首先对数据进行预处理,我们可以先给记录中的未知或缺失的时区值填上一个替代值。
clean_tz = frame['tz'].fillna('Missing')
clean_tz[clean_tz == ''] = 'Unknown'
count = clean_tz.value_counts() #该函数对tz的各个元素进行计数并按降序进行排列
#取出前十名并进行可视化
tz_counts = count[:10]
sns.barplot