ユーザーに関する履歴データがあります。傾向を調べるために、通常の最小二乗回帰を適用したいと考えています。
私のデータは次のようになります
user_id rating item_id date
12 3 19 2010-03-17
13 4 20 2010-03-18
1 3 123 2010-03-19
12 3.5 340 2010-03-17
19 2 19 2010-04-17
ここに私の機能があります
def coef(y):
s = y.shape[0]
A = np.vstack([range(s), np.ones(s)]).T
m, c = np.linalg.lstsq(A, y, rcond=None)[0]
return(m)
私は次のようなことをしたいと思っていました
mydt[:, coef(dt.f.rating), dt.by(dt.f.user_id)]
または、各ユーザー ID に対してこの関数を実行する方法もあります。残念ながら、データが大きすぎて Pandas を使用できません。代替案についても聞いていただければ幸いです。