logo
Loading...

請問直方圖的bins 是什麼意思 - Cupoy

請問直方圖的bins 是什麼意思呢?看了一些文章,也試著調整比較,但還是不太懂真正的含義

直方圖

請問直方圖的bins 是什麼意思

2019/09/17 下午 01:32
機器學習共學討論版
駱志忠
觀看數:2622
回答數:4
收藏數:0
直方圖

請問直方圖的bins 是什麼意思呢?看了一些文章,也試著調整比較,但還是不太懂真正的含義

回答列表

  • 2019/09/17 下午 07:35
    Patrick Ruan
    贊同數:1
    不贊同數:0
    留言數:1

    直方圖有區間計數 (count) 的涵義,

    如果程式中有一組資料 

    data = np.array( [22, 38, 49, 30, 18, 20, 3])

    plt.hist( data, bins=[0,25,50])


    會是計算資料落在 [0, 25)  (0 到 25 不含 25) 的數量,這個例子會有 22, 18, 20, 3 共四個。

    資料落在區間 [25,50] (25~50 含50) 的數量,這個例子會有 38,49,30 共三個。

  • 2019/09/17 下午 11:07
    Wei-po Tsai
    贊同數:1
    不贊同數:0
    留言數:1

    Hi!同學你好:

    ============================================

    我是偽菠菜(Wei-Po Tsai),是個剛學Python的新手,

    對你提到的問題很有興趣,所以研究了一下,請多指教。

    ============================================


    問題:有些範例程式,bins 只有一個數字,例如bins=25, 這代表什麼呢?


    回答:

    在hist()當中,bins可以是 :

    1. int,也就是正整數。

    2. sequence,也就是list、tuple、range。


    當bins = int 時,代表直方圖中bin的個數是int個,這麼說可能不好理解,

    所以請參考以下的圖:


    從下圖可以看到 bins = 5 時,直方圖會顯示5根棒子(我不知道bin怎麼翻,姑且稱棒子)。


    從下圖可以看到當 bins = 20 時,直方圖會顯示20根棒子(我不知道bin怎麼翻,姑且稱棒子)。


    「直方圖histogram」是個有趣的圖,它和「長條圖bar chart」有點類似,

    但卻是不同的東西,有興趣的話,可以研究看看一起討論喔!


    參考資料1:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.hist.html

    參考資料2:https://www.cnblogs.com/python-life/articles/6084059.html


    Edited By:偽菠菜(Wei-Po Tsai)

  • 2019/09/17 下午 11:47
    張維元 (WeiYuan)
    贊同數:3
    不贊同數:0
    留言數:2

    嗨,bins 的中文是箱子的意思,直方圖可以想成要將資料「分箱」。bins 代表的是要幾個箱子的意思!有幾種定義的方式,可以訂成一個數字,也可以定成區間。

  • 2019/09/18 下午 06:15
    張維元 (WeiYuan)
    贊同數:1
    不贊同數:0
    留言數:0

    bins=25 時,會有25個箱子,怎麼決定,那些資料進那一個箱子呢?


    => 會依照資料數值的大小分