Разделите значение на другое значение, если условие выполняется в другом столбце - PullRequest
0 голосов
/ 16 марта 2020

У меня есть DataFrame, который выглядит следующим образом:

DataFrameExample

Все, что я хочу, это вернуть текущую ликвидность, что означает, что я хочу разделить 'Ativo Circulante '(Текущие активы) от Passivo Circulado (текущие обязательства) за каждый год DataFrame. Я делал это итеративно, но я пытаюсь найти более разумное решение.

I' m пытается сохранить доход в списке кортежей, таких как [(2010, текущая ликвидность), (2011, текущая ликвидность)] и т. д.

1 Ответ

0 голосов
/ 16 марта 2020

Вы должны использовать pandas.pivot_table():

df = pd.DataFrame([[1,'a',10],[1,'b',20],[2,'a',30],[2,'b',10],[3,'a',10],[3,'b',60]],columns=['col1','col2','col3'])
df1 = df.pivot_table(index=['col1'],columns='col2').reset_index()
df1.columns = ['col1','a','b']
df1['c'] = df1['a']/df1['b']

Кроме того, теперь вы можете merge это df1 вернуться в исходное df.

screenshot of the output

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