gpt4 book ai didi

python - Pandas 在列中找到最接近的值

转载 作者:行者123 更新时间:2023-12-04 02:30:30 26 4
gpt4 key购买 nike

我有下表:

   year   pop1     pop2
0 0 100000 100000
1 1 999000 850000
2 2 860000 700000
3 3 770000 650000
我想为每个 pop (pop1 ,pop2) 找到 pop 最接近给定数字的年份,例如,pop 最接近 830000 的年份。
有没有办法根据给定的值在列内找到最接近的值?
我看过这篇文章( How do I find the closest values in a Pandas series to an input number? _ 但似乎这里的结果是上下左右,我最终只能得到一个数字。
*我没有代码示例,因为我没有找到任何用于获取最近的参数

最佳答案

转换栏year索引,然后减去值,通过最接近的值获取绝对值和最后一个索引(此处为年份) - 这里最小为 DataFrame.idxmin :

val = 830000

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

关于python - Pandas 在列中找到最接近的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64499180/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com