學習筆記數據分析實戰-bitly data

2011年,URL縮短服務Bitly跟美國政府網站USA.gov合做,提供了一份從生成.gov 或.mil短連接的用戶那裏收集來的匿名數據。在2011年,除實時數據以外,還能夠下載文本文件形式的每小時快照。
python

數據下載地址:git

github.com/d1m0n172/GG…【example.txt(文件名)】github

不知道怎麼讓編輯器讀取數據的小夥伴建議首頁看一下以前寫的的文章json

首先咱們先把數據導入進行分析

from numpy.random import randn 
import numpy as np
import os 
import matplotlib.pyplot as plt 
import pandas as pd

path = 'example.txt'#經過path讀取數據

open(path).readline()#讀取文件第一行數據複製代碼



import json 
path = 'example.txt'
records = [json.loads(line) for line in open(path)]
#loads以前在numpy裏面是讀取的函數
#如今recoeds對象就成爲一組python字典了

records[0]#查看數組中的值
records[1]
複製代碼




假設咱們想分析數據裏面的時區(tz字段)想從裏面提取什麼信息

import pandas as pd #先調用pandas
frame = pd.DataFrame(records)#從原始集合建立數據幀(dataframe)
#將records數組裏面的值傳遞給frame
frame.info()#使用info查看frame函數的基礎數據特性信息複製代碼





tz_counts = frame['tz'].value_counts()#賦值給計時器
#pandas 的value_counts()函數能夠對Series裏面的每一個值進行計數而且排序
tz_counts[:10]#切片複製代碼



clean_tz = frame['tz'].fillna('Missing')
clean_tz[clean_tz == ''] = 'Unknown'
tz_counts = clean_tz.value_counts()
tz_counts[:10]
#對數據裏面的缺失值進行重構
#fillna函數能夠替換缺失值(NA),而未知值(空字符串)則能夠 經過布爾型數組索引加以替換複製代碼


#用matplotlib可視化這個數據
import seaborn as sns #用seaborn包建立水平柱狀圖
subset = tz_counts[:10]
sns.barplot(y=subset.index, x=subset.values)複製代碼



經過數據分析得出結論時區美國/紐約的用戶是最多的數組

相關文章
相關標籤/搜索