(rating, size) (rating, mean) のようになぜ列に表示されるのかがわかりません。
# coding: utf-8 import pandas as pd import numpy as np r_cols = ['user_id','movie_id','rating'] ratings = pd.read_csv('DataScience/ml-100k/u.data',sep='\t',names=r_cols,usecols=range(3)) m_cols =['movie_id','title'] movies = pd.read_csv('DataScience/ml-100k/u.item',sep='|',names=m_cols,usecols=range(2)) ratings = pd.merge(movies,ratings) #print(ratings) # user/movieのマトリックスを作ることができる movieRatings = ratings.pivot_table(index=['user_id'],columns=['title'],values='rating') movieRatings.head() starWarsRatings = movieRatings['Star Wars (1977)'] starWarsRatings.head() similarMovies = movieRatings.corrwith(starWarsRatings) similarMovies = similarMovies.dropna() df = pd.DataFrame(similarMovies) #print(df.head(10)) print(similarMovies.sort_values(ascending=False)) movieStats = ratings.groupby('title').agg({'rating':[np.size,np.mean]}) print(movieStats.head()) popularMovies = movieStats['rating']['size'] >= 100 print(movieStats[popularMovies].sort_values([('rating','mean')],ascending=False)[:15]) df = movieStats[popularMovies].join(pd.DataFrame(similarMovies,columns=['similarity'])) print(df.head())
とコードを書いて実行したら
(rating, size) (rating, mean) similarity title 101 Dalmatians (1996) 109 2.908257 0.211132 12 Angry Men (1957) 125 4.344000 0.184289 2001: A Space Odyssey (1968) 259 3.969112 0.230884 Absolute Power (1997) 127 3.370079 0.085440 Abyss, The (1989) 151 3.589404 0.203709
と出力されました。
コードの中で、
(rating, size) (rating, mean) のように列にタプルのように表示されるようにしている部分はどこなのでしょうか?
そのように表示する部分をどこにも書いて無くて。。。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。