У меня есть датафрейм, содержащий почасовую прибыль для корзины из 100 акций.Одна вещь, которую я рассчитываю в настоящее время, - это средняя доходность на акцию за каждый час, а затем скользящая скользящая средняя этой цифрыПоэтому я суммирую каждую строку и делю на 100, прежде чем выполнить скользящее среднее.Допустим, например, что df выглядит так:
Time Stock 1 Stock 2 Stock 3 Stock 4 ... Stock 100
09:00 0.25 0.14 0.07 0.31 0.12
10:00 0.05 0.01 -0.03 0.18 0.09
11:00 -0.11 -0.17 0.01 -0.04 -0.13
12:00 -0.22 -0.31 -0.19 -0.34 -0.16
13:00 0.02 0.05 0.09 0.11 0.08
Итак, что бы я сделал, чтобы вычислить среднее значение для каждой строки, было бы:
df['Average'] = (df.sum(axis=1)/100)
Так что у меня с этим нет проблем,однако сейчас я пытаюсь сделать 5 самых высоких и самых слабых акций для каждой строки, а затем выполнить сумму строки и на этот раз разделить на 90.
Если бы это было простостолбец, я бы просто отсортировал его, а затем нарезал, чтобы убрать верх и низ 5. Однако, учитывая, что я делаю эти вычисления для строк, я не знаю, могу ли я использовать тот же принцип.
Любая помощь будет принята с благодарностью.