0

我正在尝试一些 knn 分类。当我尝试规范化数组中的数据时,我不断收到上述错误。

    norm_val = 100.00                                                              
    for i in range(0, len(ListData)):                                               
            ListData[i][0] = int(ListData[i][0]/max_val)

我在最后一行收到错误消息,“int”对象不可下标。

谢谢

4

2 回答 2

6

ListData似乎是一个整数列表(或者至少是一个还包含整数的列表)。

因此,ListData[i]返回i列表的第 th 个整数。而且由于没有“整数的第一个元素”之类的东西,所以在尝试访问ListData[i][0].

除此之外,如果您打算将列表的所有项目除以max_val,您可以简单地使用列表推导:

ListData = [int(item/max_val) for item in ListData]
于 2012-04-24T15:04:26.580 回答
2

ListData不仅包含列表,还包含其他不是列表的对象。

以下作品:

ListData = [ [99, "Some thing"],
             [88, "Some other thing"] ]

以下没有:

ListData = [ 99,
             88 ]

目前还不清楚你想做什么。

于 2012-04-24T15:08:32.867 回答