У меня есть фрейм данных и список индексов, и я хочу получить новый фрейм данных, чтобы для каждого индекса (из указанного последнего) я взял все предыдущие строки, соответствующие значению данного столбца по указателю.
C1 C2 C3
0 1 2 A
1 3 4 A
2 5 4 A
3 7 5 B
4 9 7 C
5 2 3 D
6 1 1 D
Столбец c3 индексов (номеров строк) 2, 4, 5 моего нового кадра данных будет:
C1 C2 C3
0 1 2 A
1 3 4 A
2 5 4 A
4 9 7 C
5 2 3 D
Пояснение:
Для индекса 2 были выбраны строки 0,1,2, потому что C3 равняется во всех из них.
Для индекса 4 предыдущая строка недопустима.
И для индекса 5 предыдущая строка также недопустима, а строка 6 не имеет значения, поскольку она не предшествует.
Каков наилучший способ сделать это?