在列中查找最接近的值

2024-04-25 20:24:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下表:

   year   pop1     pop2
0   0    100000    100000
1   1    999000    850000
2   2    860000    700000
3   3    770000    650000

我想找出每个流行音乐(pop1,pop2)最接近给定数字的年份,例如,流行音乐最接近830000的年份

有没有办法根据给定的值在列中找到最近的值

我看过这篇文章,但似乎这里的结果是上上下下的,我想最后只得到一个数字

*我没有代码示例,因为我找不到任何用于获取最近值的参数


Tags: 代码示例参数数字year年份办法篇文章
1条回答
网友
1楼 · 发布于 2024-04-25 20:24:39

将列year转换为索引,然后减去值,得到绝对值,最后一个索引(此处为年份)乘以最近的值-此处最小值乘以^{}

val = 830000

s = df.set_index('year').sub(val).abs().idxmin()
print (s)
pop1    2
pop2    1
dtype: int64

相关问题 更多 >

    热门问题