2016-07-20 8 views
4

SFrameでgroupby操作を使用するには、graphlabをインストールしないでください。SFrameでのグループ化(グラブラブをインストールしないで)

私はいくつかの集計をしたいと思いますが、インターネットのすべての例では、集計関数がGraphlabから来ているのがわかりました。

同様:

import graphlab.aggregate as agg 

user_rating_stats = sf.groupby(key_columns='user_id', 
          operations={ 
           'mean_rating': agg.MEAN('rating'), 
           'std_rating': agg.STD('rating') 
          }) 

どのように私が言う、使用することができ、numpy.meanなくagg.MEAN上記の例では?

答えて

3

sframeパッケージにはgraphlabパッケージと同じ集約モジュールが含まれているため、numpyを使用する必要はありません。

import sframe 
import sframe.aggregate as agg 

sf = sframe.SFrame({'user_id': [1, 1, 2], 
        'rating': [3.3, 3.6, 4.1]}) 
grp = sf.groupby('user_id', {'mean_rating': agg.MEAN('rating'), 
          'std_rating': agg.STD('rating')}) 
print(grp) 

+---------+---------------------+-------------+ 
| user_id |  std_rating  | mean_rating | 
+---------+---------------------+-------------+ 
| 2 |   0.0   |  4.1  | 
| 1 | 0.15000000000000024 |  3.45 | 
+---------+---------------------+-------------+ 
[2 rows x 3 columns] 
関連する問題