2017-03-15 7 views
0

私はmovielensデータセットを作成しています。関数を適用して新しい列を作成したいと考えています。 1)ratings_dataframeから対応するムービーIDを取得します 2) moviesdata_frame 3から映画の名前を見つけるために、この映画のIDを使用)とパンダの列に関数を適用する

私のコードは、から構成さ評価のデータフレームに対応するセルにこの値をコピーします。エラーがある

def getname(p): 
    nm = movies.loc[movies['movie_id'] == 'p']['title'] 
    return nm 



ratings['title'] = ratings.apply(lambda row:getname(gg['movie_id'])) 

:(」無効なタイプの比較 '、インデックスmovie_idにu'curur')魔法のように

ratings_dataframe['title'] = \ 
    ratings_dataframe['movie_id'].map(movies.set_index('movie_id')['title']) 

答えて

1
+1

作品:あなたはこの単純なマッピングの機能を必要としない – 100rabh

+0

set_index関数を使わずに同じことを実行できますか? – 100rabh

+1

代わりに 'join'や' merge'を使うこともできますが、それは遅くなるでしょう... – MaxU

関連する問題