gpt4 book ai didi

python - 最近值迭代

转载 作者:行者123 更新时间:2023-12-01 03:48:09 24 4
gpt4 key购买 nike

s1 = pd.Series({11:100, 13:102, 17:99})
s2 = pd.Series({10:1, 14:2, 18:3})

有了这些系列,我可以使用 s1 的索引,通过 s2 最接近的索引找到 s2 的值。示例:

s2.values[np.abs(s2.index - s1.index[0]).argmin()]

返回 1,因为 11,s1 的第一个索引最接近 10。

我似乎无法弄清楚如何创建一个具有 s1 和迭代这些值的 DataFrame,而不使用 for 循环,我被教导这在 pandas 中是不切实际的。

因此,使用上面的代码,期望的结果是一个 DataFrame,其中一列包含 s1 的值,另一列包含 s2 的值。

最佳答案

如果我理解正确的话,我想你想使用reindexs2 上使用 method='nearest':

s2 = s2.reindex(s1.index, method='nearest')
df = pd.DataFrame({'s1': s1, 's2': s2})

结果输出:

     s1  s2
11 100 1
13 102 2
17 99 3

关于python - 最近值迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38644511/

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