Beispiel #1
0
def augment_with_impressions_data(d, f_year):
    d_impressions = mysql_to_pandas(
        get_fr_impressions_by_country_of_web_request(cursor, f_year))
    d = pd.merge(d, d_impressions, how='inner', on='country')
    d['amount_per_1000_impressions'] = 1000 * (d['total_amount'] /
                                               d['num_impressions'])
    d['donations_per_1000_impressions'] = 1000 * (d['num_donations'] /
                                                  d['num_impressions'])
    return d
Beispiel #2
0
def get_data_frame_for_media(cursor, f_year):

    d_email = mysql_to_pandas(
        group_donations_by_country_of_web_request(cursor, f_year, "email"))
    d_email = augemnt_with_total_amount_num_donations_stats(d_email)
    d_email = prefix_df_columns(d_email, 'email_', ['country'])

    print d_email.head()

    d_banner = mysql_to_pandas(
        group_donations_by_country_of_web_request(cursor, f_year,
                                                  "sitenotice"))
    d_banner = augemnt_with_total_amount_num_donations_stats(d_banner)
    d_banner = augment_with_impressions_data(d_banner, f_year)
    d_banner = prefix_df_columns(d_banner, 'banner_', ['country'])

    print d_banner.head()

    d_sponataneous = mysql_to_pandas(
        group_donations_by_country_of_web_request(cursor, f_year,
                                                  "spontaneous"))
    d_sponataneous = augemnt_with_total_amount_num_donations_stats(
        d_sponataneous)
    d_sponataneous = prefix_df_columns(d_sponataneous, 'sponataneous_',
                                       ['country'])
    print d_sponataneous.head()

    d_sidebar = mysql_to_pandas(
        group_donations_by_country_of_web_request(cursor, f_year, "sidebar"))
    d_sidebar = prefix_df_columns(d_sidebar, 'sidebar_', ['country'])
    print d_sidebar.head()

    d = d_email.merge(d_sponataneous, how='outer',
                      on='country').merge(d_sidebar, how='outer',
                                          on='country').merge(d_banner,
                                                              how='outer',
                                                              on='country')

    d = augment_with_page_views(d)
    d = augment_with_gdp(d)
    d.to_csv("country_performance_by_channel_" + str(f_year) + ".csv")
Beispiel #3
0
def get_data_frame_for_all_media(cursor, f_year):
    d = mysql_to_pandas(get_donations_by_country_of_address(cursor, f_year))
    d = augment_with_page_views(d)
    d = augment_with_gdp(d)
    d = augemnt_with_total_amount_num_donations_stats(d)
    d.to_csv("aggregated_country_performance_" + str(f_year) + ".csv")