通过选择位置模 P = Q 的行对数据帧进行采样

Spi*_*or8 0 python pandas

假设我有一个包含 N 行的数据框。我想选择行位置模 P 给出 Q 的行。所以为了具体起见,假设 P = 7 和 Q = 5。

Row 0: 0 mod 7 = 0 (not satisfied)
Row 1: 1 mod 7 = 1 (not satisfied)
...
Row 5: 5 mod 7 = 5 (satisfied)
...
Row 12: 12 mod 7 = 5 (satisfied)
Run Code Online (Sandbox Code Playgroud)

所以选择的行将是 5, 12, 19, 26 ....

如果 Q=0,则可以使用切片方法 df.iloc[::P]。对于 mod P = Q 如何做到这一点?

Tad*_*sen 5

df.iloc[Q::P]这表示从行开始,Q然后以 为增量步进P

当第一个参数没有像.iloc[::P]隐式 0那样给出时(中间的参数是数据帧的隐式结尾),如果您需要,您可以将它指定为 0 以外的其他值。