gpt4 book ai didi

python - 选择线上方/下方的点

转载 作者:太空狗 更新时间:2023-10-30 01:17:55 25 4
gpt4 key购买 nike

我有以下数据集:

df = pd.DataFrame(np.random.rand(50,2), columns=list('AB'))

绘图数据

plt.scatter(x=df.A, y=df.B)

x = plt.axhline(y=0.4,c='k')
y = plt.axvline(x=0.4,c='k')
plt.plot([0.2, 0.3], [0, 0.4], c='k')

我想选择绿色区域中的点(见下图)。第二象限的点容易选择,但第三象限绿色区域的点不容易选择。

这就是我在第二象限中选择点的方式:

df[( df['A'] < 0.4) & (df['B'] > 0.4)]

在此之后我卡住了。

考虑到条件可能会变得复杂,比如处理曲线等。解决这个问题的最佳方法是什么?

欢迎任何建议。

enter image description here

最佳答案

我建议你可以使用 functools:

import numpy as np
import functools

cr1 = functools.reduce(np.logical_and, [df.B < 0.4, df.A < 0.2])
cr2 = functools.reduce(np.logical_and, [df.B < 0.4, df.A > 0.2, df.B > (df.A-0.2)*4])
df_filtered = df[functools.reduce(np.logical_or, [cr1,cr2])]

关于python - 选择线上方/下方的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56252830/

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