如何在引用其他行时遍历熊猫数据框行?

时间:2020-02-04 10:05:31

标签: python pandas iteration

在我的代码中,我基于同一数据帧中但另一行中的另一个值,为数据帧中的单元分配一个值。

使用for循环的代码如下:

df = pd.DataFrame({'A':[1, 2, 3],'B':[4, 5, 6]})
for i in range(1, df.shape[0]):
    df.loc[i, 'C'] = df.loc[i-1, 'B']

Output:
    A   B   C
0   1   4   NaN
1   2   5   4.0
2   3   6   5.0

这段代码为我提供了我想要的输出,但是代码相当慢。我读到了df.itterrowsdf.apply的书,但是由于引用了其他行,因此我无法确定这对我的代码如何起作用。有谁知道在熊猫数据框中引用其他行的一种遍历行的更快方法?

1 个答案:

答案 0 :(得分:0)

以这种方式更改代码

df.iloc[i]['C'] = df.iloc[i-1]['B']