數據分析學習:手把手教你用直方圖、餅圖和條形圖做數據分析...

2020-12-05 TechWeb

 

對於定量數據,要想了解其分布形式是對稱的還是非對稱的、發現某些特大或特小的可疑值,可做出頻率分布表、繪製頻率分布直方圖、繪製莖葉圖進行直觀分析;對於定性數據,可用餅圖和條形圖直觀地顯示其分布情況。

01 定量數據的分布分析

對於定量變量而言,選擇「組數」和「組寬」是做頻率分布分析時最主要的問題,一般按照以下步驟進行:

 第一步:求極差。  第二步:決定組距與組數。  第三步:決定分點。  第四步:列出頻率分布表。  第五步:繪製頻率分布直方圖。

遵循的主要原則如下:

 各組之間必須是相互排斥的。  各組必須將所有的數據包含在內。  各組的組寬最好相等。

下面結合具體實例來運用分布分析對定量數據進行特徵分析。

表3-2是菜品「撈起生魚片」在2014年第二個季度的銷售數據,繪製銷售量的頻率分布表、頻率分布圖,對該定量數據做出相應的分析。

▲表3-2 「撈起生魚片」的銷售情況

1. 求極差

極差=最大值-最小值=3960-45=3915

2. 分組

這裡根據業務數據的含義,可取組距為500,則組數如下所示。

組數=極差/組距=3915/500=7.83≈8

3. 決定分點

分布區間如表3-3所示。

▲表3-3 分布區間

4. 繪製頻率分布直方表

根據分組區間得到如表3-4所示的頻率分布表。

 其中,第1列將數據所在的範圍分成若干組段,其中第1個組段要包括最小值,最後一個組段要包括最大值。習慣上將各組段設為左閉右開的半開區間,如第一個組段為[0,500)。  第2列組中值是各組段的代表值,由本組段的上限值和下限值相加除以2得到。  第3列和第4列分別為頻數和頻率。  第5列是累計頻率,是否需要計算該列數值視情況而定。

▲表3-4 頻率分布

5. 繪製頻率分布直方圖

若以2014年第二季度「撈起生魚片」這道菜每天的銷售額組段為橫軸,以各組段的頻率密度(頻率與組距之比)為縱軸,表3-4中的數據可繪製成頻率分布直方圖,如代碼清單3-3所示。

 代碼清單3-3 「撈起生魚片」的季度銷售情況  import pandas as pd  import numpy as np  catering_sale = '../data/catering_fish_congee.xls'        # 餐飲數據  data = pd.read_excel(catering_sale,names=['date','sale'])  # 讀取數據,指定「日期」      列為索引  bins = [0,500,1000,1500,2000,2500,3000,3500,4000]  labels = ['[0,500)','[500,1000)','[1000,1500)','[1500,2000)',         '[2000,2500)','[2500,3000)','[3000,3500)','[3500,4000)']  data['sale分層'] = pd.cut(data.sale, bins, labelslabels=labels)  aggResult = data.groupby(by=['sale分層'])['sale'].agg({'sale': np.size})  pAggResult = round(aggResult/aggResult.sum(), 2, ) * 100  import matplotlib.pyplot as plt  plt.figure(figsize=(10,6))     # 設置圖框大小尺寸  pAggResult['sale'].plot(kind='bar',width=0.8,fontsize=10)  # 繪製頻率直方圖  plt.rcParams['font.sans-serif'] = ['SimHei']               # 用來正常顯示中文標籤  plt.title('季度銷售額頻率分布直方圖',fontsize=20)  plt.show() 

運行代碼清單3-3可得季度銷售額頻率分布直方圖,如圖3-3所示。

▲圖3-3 季度銷售額頻率分布直方圖

02 定性數據的分布分析

對於定性變量,常常根據變量的分類類型來分組,可以採用餅圖和條形圖來描述定性變量的分布,如代碼清單3-4所示。

 代碼清單3-4 不同菜品在某段時間的銷售量分布情況  import pandas as pd  import matplotlib.pyplot as plt  catering_dish_profit = '../data/catering_dish_profit.xls'# 餐飲數據  data = pd.read_excel(catering_dish_profit)  # 讀取數據,指定「日期」列    為索引  # 繪製餅圖  x = data['盈利']  labels = data['菜品名']  plt.figure(figsize=(8, 6))  # 設置畫布大小  plt.pie(x,labelslabels=labels)  # 繪製餅圖  plt.rcParams['font.sans-serif'] = 'SimHei'  plt.title('菜品銷售量分布(餅圖)')  # 設置標題  plt.axis('equal')  plt.show()  # 繪製條形圖  x = data['菜品名']  y = data['盈利']  plt.figure(figsize=(8, 4))  # 設置畫布大小  plt.bar(x,y)  plt.rcParams['font.sans-serif'] = 'SimHei'  plt.xlabel('菜品')  # 設置x軸標題  plt.ylabel('銷量')  # 設置y軸標題  plt.title('菜品銷售量分布(條形圖)')# 設置標題  plt.show()  # չʾͼƬ 

餅圖的每一個扇形部分代表每一類型的所佔百分比或頻數,根據定性變量的類型數目將餅圖分成幾個部分,每一部分的大小與每一類型的頻數成正比;條形圖的高度代表每一類型的百分比或頻數,條形圖的寬度沒有意義。

運行代碼清單3-4可得不同菜品在某段時間的銷售量分布圖,如圖3-4和圖3-5所示。

▲圖3‑4 菜品銷售量分布(餅圖)

▲圖3‑5 菜品銷售量分布(條形圖)

關於作者:張良均,資深大數據挖掘與分析專家、模式識別專家、AI技術專家。有10餘年大數據挖掘與分析經驗,擅長Python、R、Hadoop、Matlab等技術實現的數據挖掘與分析,對機器學習等AI技術驅動的數據分析也有深入研究。

本文摘編自《Python數據分析與挖掘實戰》(第2版),經出版方授權發布。

 

相關焦點

  • 你會做Excel直方圖嗎?一個超實用的數據分析神圖
    在日常工作中,我們最常用的是柱形圖、折線圖和餅圖。今天高頓君要分享一個冷門圖表:直方圖 別以為名稱陌生這個圖表你就用不著,其實它是一個超實用的數據分析神圖。
  • python可視化(三)seaborn單變量分析繪圖(直方圖、條形圖)
    在前面兩篇文章中,我們已經學習了seaborn繪圖的風格和顏色設置,從本篇文章開始,我們開始選一些有意思的數據集進行各種圖形繪製,在實踐中感受數據可視化的魅力。本篇文章主要講2個繪圖函數,那就是繪製直方圖的函數seaborn,distplot()和繪製條形圖的函數seaborn.barplot()(關於直方圖和條形圖的區別請查閱前面matplotlib系列中的相關文章)。處理繪圖數據今天我們用直方圖和條形圖展示下NBA2017-2018賽季各球員薪資情況。
  • 探索性數據分析的圖形化探索
    1.圖形化探索圖形化探索又稱為可視化描述,通過圖表的形式將數據的各個特徵呈現出來,不同的圖有著各自的優勢和缺陷,在實際運用過程中可以綜合使用進行數據的分析:2 直方圖2.1 直方圖的基本概念直方圖是直接了解數據分布情況最常用的圖形類型,它將連續數據分為幾個等間距的組,並以矩形的高低來顯示相應組中所含數據的頻數或和頻率大小,有時可同時顯示出數據的密度曲線作為輔助。
  • 用Excel做數據分析——直方圖
    使用Excel自帶的數據分析功能可以完成很多專業軟體才有的數據統計、分析,這其中包括:直方圖、相關係數、協方差、各種概率分布、抽樣與動態模擬、總體均值判斷,均值推斷、線性、非線性回歸、多元回歸分析、時間序列等內容。下面將對以上功能逐一作使用介紹,方便各位普通讀者和相關專業人員參考使用。
  • python數據分析常用圖大集合
    )plt.show()sns.distplot(s, kde=True)plt.show()三、垂直條形圖條形圖可以幫我們查看類別的特徵。在條形圖中,長條形的長度表示類別的頻數,寬度表示類別。可以幫我們分析出數據的差異性、離散程度和異常值等。
  • 數據分析,用對圖表很重要
    EXCEL表對以上圖表進行了比較好的分類與歸納,有興趣做進一步了解的朋友可以打開你的EXCEL表,在插入圖表功能中可以看到。餅圖的分類不建議超過9個,可以把剩餘次要的部分歸類到「其它」項中。餅圖在數據分析中是比較常用的一種圖表,比如用戶來源渠道佔比、各終端GMV貢獻佔比等都可以使用餅圖。
  • 不會高效挑選圖表,做什麼數據分析?
    比如說: ·非常滿意:40% ·滿意:30% ·不滿意:20% ·非常不滿意:10% 以上數據的均值為25%,但是這樣的數值是毫無意義的。同理,也不可以用折線圖和直方圖來表示定性數據。
  • 如何用SPSS進行數據分析?
    SPSS軟體包最初由SPSS Inc.於1968年推出,於2009年被IBM收購,主要運用於各領域數據的管理和統計分析。作為世界社會科學數據分析的標準,SPSS操作操作界面極其友好,結果輸出界面也很美觀,同時還配備十分詳細的用戶手冊。
  • 數據可視化圖表的使用方式及最佳做法,你用對了嗎?
    多維數據可視化的示例包括: 散點圖 餅狀圖 維恩圖 堆積條形圖 直方圖 5.
  • 直方圖是什麼,用Excel教你製作並分析最簡單的統計圖表
    什麼是直方圖直方圖(histogram),是一種二維統計圖,用於評估連續樣本數據的形狀和展開的圖形。可以在分析之前或在分析的同時創建直方圖,從而幫助確認假設並指導進一步的分析。反映的是數據在特定分組下的分布情況。
  • Python學習筆記:繪畫柱狀圖、誤差條形圖和餅狀圖
    1.柱狀圖#NumPy提供了許多高級的數值編程工具,如:矩陣數據類型、矢量處理,以及精密的運算庫。專為進行嚴格的數字處理而產生。ax.hist(x,bins=35,color='k')#設置X軸、Y軸的標籤名以及圖表的名字ax.set_xlabel('Values')ax.set_ylabel("Frequency")ax.set_title(r'$\mathrm{Histogram:}\ \mu=%d,\ \sigma=%d$'%(mu,sigma))plt.show()2.誤差條形圖#導入需要的數據包和繪圖包
  • 數據分析與挖掘 - 08圖形繪製
    2 頻率分布直方圖與條形圖相對比的是頻率直方圖(frequency histogram),也叫做頻率分布直方圖,是統計學中表示頻率分布的圖形。下面要學習的就是餅圖,餅圖是一種用來表示數據所佔比例最常用的圖形,它的函數是pie(),使用方法也非常的簡單,我們進行最簡單的圖形調用的時候也可以只傳一個參數,就像這樣plt.pie(x)。
  • 5個步驟,用SPSS進行數據分析
    SPSS是一款非常強大的數據處理軟體,那麼該如何用SPSS進行數據分析呢?SPSS軟體包最初由SPSS Inc.於1968年推出,於2009年被IBM收購,主要運用於各領域數據的管理和統計分析。作為世界社會科學數據分析的標準,SPSS操作界面極其友好,結果輸出界面也很美觀,同時還配備十分詳細的用戶手冊。 SPSS核心功能
  • 手把手教你使用Python進行高級數據可視化
    數據可視化能力已經越來越成為各崗位的基礎技能。領英的數據報告顯示,數據可視化技能在2018年中國最熱門技能中排名第一。就數據分析而言,可視化探索幾乎是你正式進行數據分析的第一步,通過SQL拿到數據之後,我們需要使用可視化方法探索和發現數據中的模式規律。
  • Python可視化很簡單,一文學會繪製柱狀圖、條形圖和直方圖
    、條形圖和直方圖相關的東東吧!好啦,為了能夠更好的理解,咱們還是舉個「慄子」吧:上面方框中就是咱們所調用的bar()函數哦,下面咱們就運行一下看看效果吧:運行上面的指令輸出以下結果哦:好啦,上面就是用matplotlib庫的bar()函數生成柱狀圖的過程哦,下面咱們再看一下如何繪製條形圖吧
  • SEM技巧:手把手教你做數據分析
    很多人都會覺得做數據分析很難,但是通過不斷地學習與練習,再加上技能和方法的掌握,你一定會發現數據分析其實並不難!很多剛入門SEM的小夥伴都覺得數據分析很難,尤其是看到那一堆密密麻麻的數據時更是無從下手,一臉懵逼。這是每個人都會經歷的困惑,不過只要你不斷地去摸索、學習,會發現其實數據分析也沒想像中的那麼難嘛!但,要注意方法!
  • 分分鐘做出「條形圖賽跑」- 手把手教程
    3分鐘 手把手教會你做出這種「條形圖賽跑」(Bar chart race)視頻寫過近2W收藏的回答,裡面提了4種方法分析了各自的優缺點。你只要花三分鐘讀一下就能學會https://www.zhihu.com/question/290568141/answer/1083407779什麼?
  • 阿里巴巴大牛是怎麼寫數據分析報告的?
    做一份好的數據分析報告,大到成為能否幫助企業做出正確的商業決策,小到成為能否說服老闆獲取業務資源的關鍵因素。因此做出一份高質量的數據分析報告是一個職場人必備的利器。 有人說,數據分析報告,不就是一堆的餅圖、柱狀圖、散點圖放到PPT上嗎?
  • 手把手教你用R語言分析歌詞(附代碼)
    原標題:手把手教你用R語言分析歌詞(附代碼) 雷鋒網按由於這是一個案例學習,重要的是記住你所做的推論都只是觀察性的;因此,相關性並不意味著因果關係。 提示:關於你使用的工具的背景,Garrett Grolemund 和 Hadley Wickham的《基於R語言的數據科學》,和Julia Silge 和 David Robinson的《基於R語言的文本挖掘》是兩個很好的資源。
  • 數據可視化,職場數據分析都需要哪些常用的圖表?
    圖表是對數據的可視化展示,精美的圖表可以方便用戶解讀數字之間的關係,相比起枯燥的表格來講,有助於發現容易被忽視的趨勢和規律。通過對趨勢和規律的分析,可以幫助用戶做出正確的判斷。我們將常用的圖表類型歸類為基礎圖表和高級可視化圖表。