У меня есть датафрейм, и я использую groupby, чтобы сгруппировать его по сезону. Один из столбцов исходного df называется Check и состоит из True и False. Моя цель - подсчитать истинные значения для каждой группы и поместить их в новый фрейм данных.
import pandas as pd
df = ....
df['Check'] = df['Actual'] == df['Prediction']
grouped_per_year = df.groupby('Season')
df_2= pd.DataFrame()
df_2['Seasons'] = total_matches_per_year.keys()
df_2['Successes'] = ''
df_2['Total_Matches'] = list(grouped_per_year.size())
df_2['SR'] = df_2['Successes'] / df_2['Total_Matches']
df_2['Money_In'] = list(grouped_per_year['Money_In'].apply(sum))
df_2['Profit (%)'] = (df_profit['Money_In'] - df_profit['Total_Matches']) / df_profit['Total_Matches'] * 100.
Я пытался:
successes_per_year = grouped_per_year['Pred_Check'].value_counts()
Но я не знаю, как получить только Истинный счет.
1 ответ
Для подсчета True
вы также можете использовать sum
(поскольку True = 1 и False = 0 при выполнении числовой операции):
grouped_per_year['Pred_Check'].sum()
Похожие вопросы
Новые вопросы
python
Python — это мультипарадигмальный многоцелевой язык программирования с динамической типизацией. Он предназначен для быстрого изучения, понимания и использования, а также обеспечивает чистый и унифицированный синтаксис. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Если у вас есть вопросы о версии Python, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas, NumPy) укажите это в тегах.