簡體   English   中英

graphlab創建sframe如何獲取SArray中位數

[英]graphlab create sframe how to get SArray median

我正在研究graphlab創建

data=graphlab.SFrame.read_csv('test.csv')

我試圖獲得列之一的中位數

data_train.fillna(('Credit_History',data_train['Credit_History'].median()))

但我有錯誤

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-247-50ed3eb09dcc> in <module>()
----> 1 data_train.fillna(('Credit_History',data_train['Credit_History'].median()))

AttributeError: 'SArray' object has no attribute 'median'

盡管有人知道如何解決此問題,但data.show()將顯示此列的中位數?

我想我了解您的嘗試。 Sframe沒有默認的中位數函數。 我會像這樣即興創作:

import numpy as np
data_train.fillna('Credit_History', np.median(data_train['Credit_History']))

SArray沒有中值方法。 獲得中位數的最佳方法是通過sketch_summary方法,然后進行quantile 有關草圖摘要的更多信息,請參見

https://turi.com/products/create/docs/generated/graphlab.Sketch.html

import numpy as np
import graphlab as gl

sf = gl.SFrame(np.random.rand(100))

sketch = sf['X1'].sketch_summary()
median = sketch.quantile(0.5)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM