2016-06-11 25 views
0

我在學習機器學習,並且遇到了這個code。 我想從上面的源文件運行文件"Recommender-Systems.py"。但它會拋出一個錯誤
ValueError: labels ['timestamp'] not contained in axis.
它如何被刪除?ValueError:不包含在軸中的標籤['timestamp']

這是u.data文件的下拉框link

+0

你有'u.data'文件嗎?你能提供一個樣本嗎? – pekapa

+0

我已經從[這裏]下載了數據集(http://files.grouplens.org/datasets/movielens/ml-100k.zip) – Aditya

回答

1

您的數據缺少標題,因此第一行會錯誤地推斷它。

您需要更改一點點Recommender-Systems.py並手動通知標題。

正確的標題在您的數據集的README文件中可用。

文件更改爲這樣的事情:

## Explore the data (line 27) 
data = pd.read_table('u.data', header=None) # header=None avoid getting the columns automatically 
data.columns = ['userID', 'itemID', 
       'rating', 'timestamp']  # Manually set the columns. 
data = data.drop('timestamp', axis=1)  # Continue with regular work. 

... 

## Load user information (line 75) 
users_info = pd.read_table('u.user', sep='|', header=None) 
users_info.columns = ['useID', 'age', 'gender', 
         'occupation' 'zipcode'] 
users_info = users_info.set_index('userID') 

... 

## Load movie information (line 88) 
movies_info = pd.read_table('u.item', sep='|', header=None) 
movies_info.columns = ['movieID', 'movie title', 'release date', 
         'video release date', 'IMDb URL', 'unknown', 
         'Action', 'Adventure', 'Animation', "Children's", 
         'Comedy', 'Crime', 'Documentary', 'Drama', 
         'Fantasy', 'Film-Noir', 'Horror', 'Musical', 
         'Mystery', 'Romance', 'Sci-Fi',' Thriller', 
         'War', 'Western'] 
movies_info = movies_info.set_index('movieID')#.drop(low_count_movies) 


這應該工作(但我不知道如果我把所有的列右邊名稱)。