摘要: 菜鳥獨白 用python來玩轉資料分析實在是太爽了,因為有強大的pandas來處理資料非常方便,我個人對資料分析情有獨鍾,探索資料的秘密非常好玩!前段時間寫過一篇小白學資料分析入門招式,但是高階的部分上次沒有來得及整理,今天分享給大家。
菜鳥獨白
用python來玩轉資料分析實在是太爽了,因為有強大的pandas來處理資料非常方便,我個人對資料分析情有獨鍾,探索資料的秘密非常好玩!前段時間寫過一篇小白學資料分析入門招式,但是高階的部分上次沒有來得及整理,今天分享給大家。
我們依然用比較有名的泰坦尼克資料集來做示例,通過對這個資料集的處理,來快速上手資料分析的常見招式和基本手法,讓初學者可以快速上手資料分析!
要點:1.資料集的字元處理
第一招:對列的處理
我們看一下這個資料集裡面的列都是英文的,不是很爽,我們把列的名字變成中文,這樣看的舒服。
df.rename(columns=)
這樣處理完之後看一下是不是舒服很多:
第二招:對資料集裡面的特定字串進行替換
我們把性別裡面的male替換為男,female替換為女
df['性別'].map()
第三招:對列的字元進行替換
我們看到船票比如a/5 21171 有兩部分組成,一部分是英文本元,一部分是純數字,如果我們只想保留數字部分,我們直接用str字串進行處理
df['船票']=df['船票'].str.replace(r'[^d+]','')
pandas裡面的字串功能非常強大,除了replace之外,
還有contains,split,match,findall,endswith等等,這招在清洗資料的非常有用。
2.資料集的過濾
我們在分析資料的時候經常要對資料內容進行過濾,或者是部分提取。
第四招:用邏輯表示式組合過濾
提取性別是女孩並且年齡在10歲以下的
df[(df['性別']=='女')&(df['年齡']<=10)]
第五招:巧用不等於
提取非3等艙,並且獲救乘客資訊
df[(df['是否獲救']==1)&(df['船艙等級']!=3)]
第六招:也可以用query函式
df.query('船艙等級==[1,2]')
3.資料的分類
我們有的時候需要對資料進行多維度的細分和統計,有下面幾招:
第七招:用where函式
第一種比較簡單,用where
比如我們認為比如我們認為 年齡在18以下都是未成年,18歲以上成年的
df['是否成年']=np.where(df['年齡']>=18,'成年','未成年')
看一下新增的列"年齡分類"是不是層次分類更精準!
4.資料的切片和透視表
第九招:神奇的groupby函式
我們喜歡對資料按照某種類別分組統計:
1).從性別的維度來對是否獲救的人數進行統計
df.groupby('性別')['是否獲救'].count()
性別女 314
男 577
name: 是否獲救, dtype: int64
2).從船艙的等級來看是非獲救
df.groupby('船艙等級')['是否獲救'].count()
船艙等級
1 216
2 184
3 491
name: 是否獲救, dtype: int64
第十招:對資料進行軸切片分析
比如我們希望對是非獲救和船艙等級這個兩個軸進行深入切片分析,這樣的伎倆在r語言裡面也經常用到,這裡pandas給我們提供了非常方便的agg函式
df.groupby(['是否獲救','船艙等級'])['年齡'].agg(['size','max','min','mean'])
這樣就很容易發現,獲救裡面的頭等艙的人比較多,平均年齡相對未獲救的要年輕不少.
第十一招:資料透視表
透視表在很多資料分析裡面都有,比如常見的excel裡面,pandas也提供了類似的功能.
根據乙個或者多個鍵對資料進行聚合,我們用透視表也能做出類似上面的功能,比groupby還要強大.
df.pivot_table(columns=['性別'],
index=['是否獲救','船艙等級'],
values='年齡',
aggfunc=)
看完上面的11招,加上前面的(18招,小白必看的資料分析招式|精選上篇),學會這些招數基本上可以算是入門資料分析了。
從0開始,教你如何做資料分析
首先,我先說一下自己用excel等工具做的分析,跟使用這些現成資料平台的區別。1丶會用工具自己做分析,不單單侷限在 這個時代什麼行業都有資料,如果掌握了,你做什麼都能應用到。用 指數或者阿里指數只能侷限在 這一塊。2丶用現成的資料平台,只要求能看懂資料,幾乎不需要自己動手分析資料。可能100個人裡面...
市場調研中如何做資料分析?
網易雲社群 市場調研是乙個系統的具有邏輯的行為,其中的資料分析更是佔據了市場調研的工作量中的一大部分,對於市場調研的必要性和目的性,前面說得很清楚,不做搬運了,在這裡需要補充強調說明一點 就是調研資料的視覺化!調研結束了,資料也分析了,但是怎麼樣才能讓老闆看著明白,看著爽呢,那就需要資料視覺化了。其...
創業公司如何做資料分析(五)微信分享追蹤系統
這樣的資料的意義在於 這部分資料驅動了近一半的推廣業務。1.早期服務 隨著推廣活動的調整,統計和獎勵政策也隨之變化,比如有的依據一度分享者的分享次數進行獎勵,有的依據一度 二度分享者帶來的瀏覽量進行獎勵等等,還有需要根據上報的引數不同做不同的處理。所有邏輯都在上報的api請求中處理,來乙個需求加一段...