PANDAS:在给定当前行和col的情况下,是否有一种自然的方法可以获取前一行中单元格的值?

时间:2013-10-25 17:05:05

标签: python-2.7 pandas ipython ipython-notebook dataframe

我有一个数据框:

    a   b   c   d
A   1   6   4   1
B   2   6   3   9
C   1   2   4   5
D   4   6   1   5

我想提供行名称,列名称和要移回的行数。然后我会 想知道那个细胞中有什么价值。

例如:

df.ix[C,b] & shiftback= 2 rows 

会回来:     6

有一种超快的方法吗?

1 个答案:

答案 0 :(得分:2)

为了澄清一下,你想要一个能够获取数据帧,位置(行和列)和数字的函数吗?你会想要使用pandas shift方法。

def f(df, row, col, nshift):
    return df.shift(nshift).loc[row, col]

也可以使用负数。你可能想要处理那些会让你与众不同的转变;这将返回NaN s。

In [12]: f(df, 'C', 'b', 2)
Out[12]: 6.0

同样快速,你的意思是高性能还是简短?这很短,但可能不是那么高效。