1

在 Graphlab 中,

我正在处理较大列表中的一小部分电影。

  movieIds_5K_np = LL_features_SCD_min.to_numpy()[:,0]
  ratings_33K_np = ratings_33K.to_numpy()

movieIds_5K_np是一个包含我的movieIds 的数组。`ratings_33K_np' 是一个包含四列的数组,其第二列包含所有电影的电影 ID。

我只需要选择ratings_33K_npid 存在于“movieIds_5K_np”中的行。

我尝试了这种方法,但它似乎不起作用:

 ratings_5K_np = ratings_33K_np[ratings_33K_np[:,2]==movieIds_5K_np] 

我如何在 Graphlab 中或使用一些 Python 库来做到这一点?我应该说最初是作为ratings_33KSFramemovieIds_5K导入的。

谢谢

4

1 回答 1

1

鉴于您有 2sframe秒,您可以执行 a join,如下所示:

ratings_5K = LL_features_SCD_min[['id_column_name']].join(ratings_33K, on='id_column_name', how='left')

据我从您的代码中了解到,LL_features_SCD_minsframe对应于您的 miniset(5K 数据)。因此,您只需获取所需的 ID,然后将它们与整个数据集连接起来,从而获得sframe仅包含所需 ID 的新 ID。只需替换您的 id 列名称即可。

有关如何在其中join工作的更多信息,请graphlab考虑查看.SFrame

祝你好运!

于 2016-03-27T17:59:02.597 回答