在繪製密度直方圖時,只有出現一條bin,該怎麼解決?
2019/09/03 下午 03:04
機器學習共學討論版
Eddie
觀看數:135
回答數:4
收藏數:1
ml100-3
ml100-3-d08
我在繪製作業中的’AMT_INCOME_TOTAL‘欄位的密度直方圖時,只有出現一條bin,請問該怎麼解決呢?
print('MAX=',app_train['AMT_INCOME_TOTAL'].max())
print("MIN=",app_train['AMT_INCOME_TOTAL'].min())
print('MEAN=',app_train['AMT_INCOME_TOTAL'].mean())
app_train['AMT_INCOME_TOTAL'].hist(bins=50)
回答列表
-
2019/09/03 下午 06:49賴煜升贊同數:0不贊同數:0留言數:0
因爲數值太大的關係 我選擇了log10的方式
-
2019/09/03 下午 08:14盧思妤贊同數:0不贊同數:0留言數:0
我選用['AMT_INCOME_TOTAL']這個欄位的時候也和你發生一樣的問題,可能像上面的同學回復的一樣,數字太大了,後來我選用['AMT_CREDIT']這個欄位就可以做出比較好看的圖了,不知道老師們有沒有針對['AMT_INCOME_TOTAL']這個欄位有比較好的處理方式可以舉例?
-
2019/09/03 下午 11:05張維元 (WeiYuan)贊同數:1不贊同數:0留言數:1
因為這個欄位有異常資料的關係,所以只有一條 bin 是正常的,也是需要你們思考的問題!(後面的練習有解法)
-
2019/09/04 上午 00:39Pohan Chen贊同數:0不贊同數:0留言數:2
我自己是把+-三個標準差以外的值拿掉之後就可以順利的畫出圖了
INCOME = app_train['AMT_INCOME_TOTAL']
MEAN = INCOME.mean()
SD = INCOME.std()
SMALL_INCOME = INCOME[np.abs(INCOME-MEAN)<=3*SD]
SMALL_INCOME.hist()