фреймы данных в Пандах - PullRequest
       9

фреймы данных в Пандах

0 голосов
/ 29 ноября 2018

Допустим, у меня есть df:

df = pd.DataFrame([[1, 2, 1], [1, 3, 2], [4, 6, 3], [4, 3, 4], [4, 4, 5]], columns=['A', 'B', 'C'])
   A  B  C
0  1  2  1
1  1  3  2
2  4  6  3
3  4  3  4
4  4  4  5

Я хочу сгруппировать 'A' и выполнить некоторые вычисления и манипуляции с подкадрами 'B', 'C', но я не могу найти, какчтобы сделать это, я нашел, как на только один столбец.Поэтому, если я вызываю каждый из этих подкадров данных SubDF, то, что я пытаюсь сделать:

SubDF = SubDF.sort_values(by=['B','C'], ascending=[False,True])

Обратный столбец C, взять cumsum, а затем снова повернуть, я думаю эточто-то вроде этого:

SubDF['cum_C'] = SubDF.loc[::-1, 'C'].cumsum()[::-1]

Я пытаюсь сделать так, чтобы каждое значение от 'A' до .sort_values ​​(by = ['B', 'C'] возрастало = [False, True]) затемdf.val1.cumsum () Вычислите percertage 'C'

SubDF['per_C'] = 100*SubDF.cum_C/SubDF.C.sum()

и для каждой SubDF получите первую строку, где cum_C ниже 90%, поэтому самый конечный результат будет примерно таким:

df:
       A  B  C cum_C per_C
    0  1  2  1  1    33.333
    1  2  4  5  9    75.000

Как мне это сделать?

Спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...