我正在使用Python (通常是一个R人员),我正在尝试为一个特定的应用程序创建这个函数。基本上,我尝试在"Month_of_Year“列中采用每个月的"CallsPresented”列的平均值。我知道我把事情搞得太复杂了。我该如何做到这一点呢?
def get_monthly_mean(df):
avg_by_month = []
months = ['Jan', 'Feb', 'Mar', 'Apr', 'June', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
for i in range(11):
x = np.mean(df['CallsPresented'][df.loc[df['Month_of_Year'] == months[i]]])
avg_by_month.append(x)
return months
发布于 2018-07-04 05:54:05
为什么不直接groupBy
month列并计算每个组的mean
呢?
就像这样
def get_monthly_mean(df):
df_grouped = df.groupby('Month_of_Year')['CallsPresented'].mean()
#Then you can pass the column to a list or just return the grouped df,
#whatever suits your use case better
return df_grouped
https://stackoverflow.com/questions/51163175
复制相似问题