最初私はパンダを使用してユーザID MOVIEIDテーブルを作っていますで、私は問題に直面しています コードが私はプログラムを開発しているし、それが
import pandas as pd
movie = pd.read_csv('ActionsOnly.csv')
movie_pivot = movie.pivot_table(index='userId', columns='movieId', values='rating', fill_value=0.0)
movie_pivot.to_csv('ActionsOnly1.csv')
を下回っているが、今私は、ユーザーの映画のテーブルを持って、csvファイルに保存されています。
は今、私は映画の類似性を見つけて、映画の映画の列に格納するコードimport math
def cosine_similarity(v1,v2):
"compute cosine similarity of v1 to v2: (v1 dot v2)/{||v1||*||v2||)"
sumxx, sumxy, sumyy = 0, 0, 0
for i in range(len(v1)):
x = v1[i]; y = v2[i]
sumxx += x*x
sumyy += y*y
sumxy += x*y
return sumxy/(math.sqrt(sumxx)*math.sqrt(sumyy))
def get_values():
itemList = []
maxLengthList= input("Enter the number of items:\n")
while len(itemList) < int(maxLengthList):
item = input("Enter your Item to the List: ")
itemList.append(float(item))
return itemList
def c_main():
print("\nEnter the values for the first user \n")
user1 = get_values()
print("\nEnter the values for the second user \n")
user2 = get_values()
print("\nThe cosine similarity value is", round(cosine_similarity(user1,user2),3))
を使用しています映画映画の類似性を取るために、そのための 値しようとしています すなわち
movieid1 movieid2 movieid3
movieid1 1 0.45 0.56
movieid2 0.45 1
movieid3 0.56 1
私は、useridとmovieIdテーブルを含むActionsOnly.csvから値を抽出し、上記のコサイン類似度に値を入れて、結果を上のムービームービーリストに保存します。梅毒は... だから、私は私は以下のコードにPD
movie = pd.read_csv('ActionsOnly.csv')
movie_pivot = movie.pivot_table(index='movieId', columns='movieId', values='rating', fill_value=0.0)
movie_pivot.to_csv('Movie_Similarity_Only1.csv')
として
輸入パンダを使用しています映画movie.csvテーブルを作成するための を知らないエラーが直面していますそのように配置されますここ
コードを実行している間、私はこれらが
line 615, in _get_level_number
'level number' % level)
ValueError: The name movieId occurs multiple times, use a level number
During handling of the above exception, another exception occurred:
line 5, in <module>
movie_pivot = movie.pivot_table(index='movieId', columns='movieId', values='rating', fill_value=0.0)
line 142, in pivot_table
table = agged.unstack(to_unstack)
line 3954, in unstack
return unstack(self, level, fill_value)
line 449, in unstack
return _unstack_multiple(obj, level)
line 296, in _unstack_multiple
clocs = [index._get_level_number(i) for i in clocs]
line 296, in <listcomp>
clocs = [index._get_level_number(i) for i in clocs]
line 619, in _get_level_number
raise KeyError('Level %s not found' % str(level))
KeyError: 'Level movieId not found'
あり、これらはエラーであると私は、このMOVに挿入される値を得るために、私の上記のcosine similarity
ロジックを適用するエラー に直面していますすなわち、映画テーブル。
このサイトではありません私達にあなたのattemp /コード – depperm
を表示ソリューション全体を提供する。これは、既存のコードの問題をデバッグするのに役立ちます。どこから始めたらいいかわからない場合は、先生と時間を過ごすか、チュートリアルを読んでください。 –
ようこそStackoverflowへ。ここでは、学びたい(そして何らかの努力を払う)人を支援するためにここに来ています。私たちはあなたのコーディングを行うためのものではありません。がんばろう! – alfasin