如何获取DataFrame中最近的数字的位置

时间:2019-05-03 07:05:06

标签: python python-3.x pandas dataframe

我有以下DataFrame

    0
0   5
1   10
2   15
3   20

我想获取接近 n 值的值的位置。例如:如果 n = 7 ,则最接近的数字是 5 。 在此返回位置 5 之后,即[0] [0]

2 个答案:

答案 0 :(得分:1)

使用Series.absSeries.idxmin

# Setup
df = pd.DataFrame({0: {0: 5, 1: 10, 2: 15, 3: 20}})
n = 7

(n - df[0]).abs().idxmin()

[出]

0

答案 1 :(得分:0)

使用numpy.argmin获取最接近的数字索引:

public OriginatingService {
    @Transactional
    public void someMethod() {
        originatingRepoDifferentFromSomeOtherRepo.save(something);