Допустим, у меня есть кадр данных только с двумя столбцами и 20 строками, где все значения из первого столбца равны 10, а все значения из второй строки являются случайными процентными числами.
Теперь яхочу умножить первый столбец на процентные значения второго столбца +1, но только через определенные промежутки времени и скопировать последнее значение в следующую строку.
Например, я хочу выполнить эту операцию умножения из строки 5до 10.
Проблема в том, что я не знаю, начинать и заканчивать вычисления в произвольных точках на основе индекса df.
Пример входных данных:
df = pd.DataFrame(np.random.randint(0,10,size=(20, 2)), columns=list('AB'))
df['A'] = 10
df['B'] = df['B'] /100
Что дает:
A B
0 10 0.07
1 10 0.02
2 10 0.05
3 10 0.00
4 10 0.01
5 10 0.09
6 10 0.00
7 10 0.02
8 10 0.03
9 10 0.05
10 10 0.05
11 10 0.03
12 10 0.01
13 10 0.09
14 10 0.06
15 10 0.07
16 10 0.01
17 10 0.01
18 10 0.01
19 10 0.07
Вывод, который я хотел бы получить, - это то, где первая строка идет через вычислительное умножение только в рядах свиноматок, например:
C B
0 10 0.07
1 10 0.02
2 10 0.05
3 10 0.00
4 10 0.01
5 10,9 0.09
6 10,9 0.00
7 11,11 0.02
8 11,45 0.03
9 12,02 0.05
10 12,62 0.05
11 12,62 0.03
12 12,62 0.01
13 12,62 0.09
14 12,62 0.06
15 12,62 0.07
16 12,62 0.01
17 12,62 0.01
18 12,62 0.01
19 12,62 0.07
Спасибовы!