[英]Getting back a tuple when trying to normalize training data
我有一個培訓和測試集。 我需要對其進行規范化,但似乎無法對其進行迭代,但會收到此錯誤TypeError: list indices must be integers or slices, not tuple
。 我將只介紹其中的一小部分,以便您了解其結構。 我試過enumerate
和range
但我得到相同的錯誤。
training_data = [
[3.6216, 8.6661, -2.8073, -0.44699, 0],
[4.5459, 8.1674, -2.4586, -1.4621, 0],
[3.866, -2.6383, 1.9242, 0.10645, 0],
[3.4566, 9.5228, -4.0112, -3.5944, 0],
[0.32924, -4.4552, 4.5718, -0.9888, 0],
[4.3684, 9.6718, -3.9606, -3.1625, 0],
[3.5912, 3.0129, 0.72888, 0.56421, 0],
[2.0922, -6.81, 8.4636, -0.60216, 0],
]
碼:
def minMaxNrom(training_data, testing_data):
for i in enumerate(training_data):
for j in enumerate(training_data):
new_data = training_data[i][j] - min(j) / max(j) - min(j)
for i in enumerate(testing_data):
for j in enumerate(testing_data[i]):
new_testing_data = testing_data[i][j] - min(j) / max(j) - min(j)
return (new_data, new_testing_data)
for i in enumertae(list)
生成一個tuple
,即(index:value)
,您要查找的是索引,因此for i,v in enumerate(list)
def minMaxNrom(training_data, testing_data):
for i,v1 in enumerate(training_data):
for j,v2 in enumerate(v1):
new_data = training_data[i][j] - (min(v1) / max(v1)) - min(v1)
for i,v1 in enumerate(testing_data):
for j,v2 in enumerate(v1):
new_testing_data = testing_data[i][j] - (min(v1) / max(v1)) - min(v1)
return (new_data, new_testing_data)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.