【发布时间】:2021-10-28 08:39:53
【问题描述】:
我正在尝试获取数据框中每列的 k 个最小值。但是我无法获得索引。 我有一个数据框,其中包含名为 ddist 的数据之间的距离。我想在每列中选择 k 个最小元素并列出第一个。每个元素所在的行数,因此我可以稍后将其用于 KNN。
这些是我尝试获取索引的行,但是我得到了一个包含索引和值的列表,并且无法单独访问索引。
list_min = []
for column in ddist:
idx = ddist.nsmallest(k,column)
idx=idx[0]
list_min.append(idx)
list_min
输出如下所示
[43 0.0
188 0.0
202 0.0
Name: 0, dtype: float64,
21 0.04
26 0.04
94 0.04
Name: 0, dtype: float64,
27 0.39
52 0.39
164 0.39
Name: 0, dtype: float64,
33 0.01
131 0.01
210 0.01
...
但我只想获得看起来像每个条目上的列的整数。
【问题讨论】:
标签: python list indexing knn euclidean-distance