Utilization


In [ ]:
% matplotlib inline
import pandas

from django_pandas.io import read_frame

from lowfat import models

In [ ]:
all_expenses = read_frame(
    models.Expense.objects.filter(
        grant_heading="F"
    ),
    fieldnames=["fund__claimant", "amount_claimed"]
)
all_expenses.head()

In [ ]:
expenses_per_fellow = all_expenses.groupby(["fund__claimant"]).sum().astype(float).sort_values(by=['amount_claimed'])
expenses_per_fellow.head()

In [ ]:
expenses_mean = float(expenses_per_fellow.mean())

plt = expenses_per_fellow.plot(  # Draw plot of expenses per fellow
    kind="bar"
)
plt.axhline(  # Draw read line with mean
    expenses_mean,
    color='r'
)

In [ ]:
all_expenses = read_frame(
    models.Expense.objects.filter(
        grant_heading="F"
    ),
    fieldnames=["fund__claimant__application_year", "fund__claimant", "amount_claimed"]
)

expenses_per_year = all_expenses.groupby(["fund__claimant__application_year", "fund__claimant"]).sum().astype(float)
expenses_per_year.head()

In [ ]:
expenses_per_year = all_expenses.groupby(["fund__claimant__application_year"])
for year, year_group in expenses_per_year:
    df = year_group[["fund__claimant", "amount_claimed"]].groupby(["fund__claimant"]).sum().astype(float).sort_values(by=['amount_claimed'])
    expenses_mean = float(df.mean())
    plt = df.plot(  # Draw plot of expenses per fellow
        kind="bar"
    )
    plt.axhline(  # Draw read line with mean
        expenses_mean,
        color='r'
    )