[英]Matrix multiplication with SFrame and SArray with Graphlab and/or Numpy
[英]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.