擅长:python、mysql、java
<p>使用<code>pandas</code>的另一种方法可以是以下方法(请注意,这些值是伪值)——</p>
<pre><code>df = pd.DataFrame({'pop':[10,20,30,15,34,23,10,12], 'country':['a','b','c','d','e','f','g','h']})
df = df.set_index('country')
df
pop
country
a 10
b 20
c 30
d 15
e 34
f 23
g 10
h 12
</code></pre>
<p>现在,如果您想找到值为<code>pop</code>的5个最接近的国家,例如,country <code>b</code>,您可以尝试以下方法-</p>
<pre><code>df['diff'] = (df['pop'] - df.loc['b', 'pop']).abs()
df[df.index != 'b'].sort_values(['diff']).head(5).index.tolist()
['f', 'd', 'h', 'a', 'c', 'g']
</code></pre>