sách gpt4 ăn đã đi

python - TypeError : list indices must be integers or slices, 不是电影评级数据的元组

In lại Tác giả: Walker 123 更新时间:2023-11-30 09:17:50 25 4
mua khóa gpt4 giày nike

我尝试在其他文章中查找有关如何解决此问题的信息,但由于某种原因我没有得到任何结果。我收到错误“TypeError:列表索引必须是整数或切片,而不是元组”,并想看看是否有人可以指出我的代码中的原因。

Cảm ơn trước!

nb_users = int(max(max(training_set[:,0]), max(test_set[:,0])))
nb_movies = int(max(max(training_set[:,1]), max(test_set[:,1])))

def convert(data):
new_data = [] expects that. 1 list per user
for id_users in range(1, nb_users + 1):
id_movies = data[:,1][data[:,0] == id_users]
id_ratings = data[:,2][data[:,0] == id_users]
ratings = np.zeros(nb_movies)
ratings[id_movies - 1] = id_ratings
new_data.append(list(ratings))
return new_data

training_set = convert(training_set)
test_set = convert(test_set)


TypeError: Traceback (most recent call last)
in ()
3
4 #take max user id/movie id for total numbers for test and train set.
----> 5 nb_users = int(max(max(training_set[:,0]), max(test_set[:,0])))
6 nb_movies = int(max(max(training_set[:,1]), max(test_set[:,1])))
7

TypeError: list indices must be integers or slices, not tuple

câu trả lời hay nhất

您似乎使用 training_set 作为 Pandas 数据框,但它实际上是一个列表。

您应该首先将其转换为数据框;执行此操作的方法取决于 training_set 元素的结构。例如,如果它们是字典,您可以这样做:

training_set_df = pandas.DataFrame(training_set)

然后使用training_set_dfthay vìtraining_set

关于python - TypeError : list indices must be integers or slices, 不是电影评级数据的元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50519035/

25 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress