寻找熊猫/打印相邻行的价值

时间:2018-02-13 14:17:42

标签: python pandas

我需要找到列中的所有行" A"等于0,然后打印出#34; B"列中的相邻值。任何关于如何在熊猫中做到这一点的帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

假设您的数据框名为df。要获取列中的所有行" A"等于0:

df_a = df[df["A"] == 0]

然后,获取这些行的索引:

df_a_index = df_a.index

然后,您需要这些索引的下一行:

df_b_index = df_a_index + 1

然后,

df.iloc[df_b_index]["B"]

将在列" B"。

中为您提供相邻(下一行)

答案 1 :(得分:0)

这是一种方式:

import pandas as pd

df = pd.DataFrame([[0, 5], [1, 10], [2, 6], [3, 2],
                   [4, 9], [5, 1], [0, 3], [1, 3]], columns=['A', 'B'])

df.loc[[False] + list(df.set_index('A').index.get_loc(0))[:-1], 'B']

# 1    10
# 7     3
# Name: B, dtype: int64