热线电话:13121318867

登录
2019-01-16 阅读量: 689
python如何实现K近邻

然后我们转到数据集本身。我们将项目保存到名为items的列表中,其元素是字典(每个项目一个)。这些项目词典的关键是功能名称,以及用于保存项目类的“类”。最后,我们想要对列表中的项目进行随机播放(这是一个安全措施,以防项目处于奇怪的顺序)

items = [];

for i in range(1, len(lines)):

line = lines[i].split(', ');

itemFeatures = {"Class" : line[-1]};

# Iterate through the features

for j in range(len(features)):

# Get the feature at index j

f = features[j];

# The first item in the line

# is the class, skip it

v = float(line[j]);

# Add feature to dict

itemFeatures[f] = v;

# Append temp dict to items

items.append(itemFeatures);

shuffle(items);

为了更快地找到最大距离项,我们将保持列表按升序排序。因此,列表中的最后一项将具有最大距离。我们将用新项目替换它,我们将再次排序。

为了加快这个过程,我们可以实现一个插入排序,我们在列表中插入新项目,而不必对整个列表进行排序。虽然这个代码很长,虽然很简单,但是会让教程陷入困境。

0.0000
5
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子