In [29]:
%matplotlib inline
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from glob import glob

In [2]:
#unzip all data

In [2]:
sc_2012 = pd.read_excel('../new_data/DOE-SC_Grants_FY2012.xlsx')
usa_2012 = pd.read_csv('../new_data/2012_089_Assistance_Full_20190131_1.csv')


/Users/mbaumer/anaconda2/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2718: DtypeWarning: Columns (30,31,34) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [3]:
print len(sc_2012), len(usa_2012)


2684 11236

In [8]:
len(usa_2012.groupby('award_id_fain').count())


Out[8]:
8384

In [9]:
len(sc_2012.groupby('Award Number').count())


Out[9]:
2684

So USA has many more awards listed than the SC file. Maybe not all of the awards in USA are office of science?


In [24]:
usa_2012.columns


Out[24]:
Index([u'award_id_fain', u'modification_number', u'award_id_uri',
       u'sai_number', u'federal_action_obligation',
       u'non_federal_funding_amount', u'total_funding_amount',
       u'face_value_of_loan', u'original_subsidy_cost', u'total_subsidy_cost',
       u'total_loan_value', u'action_date',
       u'period_of_performance_start_date',
       u'period_of_performance_current_end_date', u'awarding_agency_code',
       u'awarding_agency_name', u'awarding_sub_agency_code',
       u'awarding_sub_agency_name', u'awarding_office_code',
       u'awarding_office_name', u'funding_agency_code', u'funding_agency_name',
       u'funding_sub_agency_code', u'funding_sub_agency_name',
       u'funding_office_code', u'funding_office_name', u'recipient_duns',
       u'recipient_name', u'recipient_parent_name', u'recipient_parent_duns',
       u'recipient_country_code', u'recipient_country_name',
       u'recipient_address_line_1', u'recipient_address_line_2',
       u'recipient_city_code', u'recipient_city_name',
       u'recipient_county_code', u'recipient_county_name',
       u'recipient_state_code', u'recipient_state_name', u'recipient_zip_code',
       u'recipient_zip_last_4_code', u'recipient_congressional_district',
       u'recipient_foreign_city_name', u'recipient_foreign_province_name',
       u'recipient_foreign_postal_code',
       u'primary_place_of_performance_country_code',
       u'primary_place_of_performance_country_name',
       u'primary_place_of_performance_code',
       u'primary_place_of_performance_city_name',
       u'primary_place_of_performance_county_code',
       u'primary_place_of_performance_county_name',
       u'primary_place_of_performance_state_name',
       u'primary_place_of_performance_zip_4',
       u'primary_place_of_performance_congressional_district',
       u'primary_place_of_performance_foreign_location', u'cfda_number',
       u'cfda_title', u'assistance_type_code', u'assistance_type_description',
       u'award_description', u'business_funds_indicator_code',
       u'business_funds_indicator_description', u'business_types_code',
       u'business_types_description', u'correction_delete_indicator_code',
       u'correction_delete_indicator_description', u'action_type_code',
       u'action_type_description', u'record_type_code',
       u'record_type_description', u'last_modified_date'],
      dtype='object')

In [5]:
usa_2012[usa_2012['total_loan_value'] == usa_2012['total_loan_value'].dropna().max()]['recipient_name']


Out[5]:
10314    MOJAVE SOLAR LLC
Name: recipient_name, dtype: object

In [7]:
usa_2012['awarding_office_code']


Out[7]:
0       NaN
1       NaN
2       NaN
3       NaN
4       NaN
5       NaN
6       NaN
7       NaN
8       NaN
9       NaN
10      NaN
11      NaN
12      NaN
13      NaN
14      NaN
15      NaN
16      NaN
17      NaN
18      NaN
19      NaN
20      NaN
21      NaN
22      NaN
23      NaN
24      NaN
25      NaN
26      NaN
27      NaN
28      NaN
29      NaN
         ..
11206   NaN
11207   NaN
11208   NaN
11209   NaN
11210   NaN
11211   NaN
11212   NaN
11213   NaN
11214   NaN
11215   NaN
11216   NaN
11217   NaN
11218   NaN
11219   NaN
11220   NaN
11221   NaN
11222   NaN
11223   NaN
11224   NaN
11225   NaN
11226   NaN
11227   NaN
11228   NaN
11229   NaN
11230   NaN
11231   NaN
11232   NaN
11233   NaN
11234   NaN
11235   NaN
Name: awarding_office_code, Length: 11236, dtype: float64

OK, so usaspending officially sucks -- it doesn't have any information below "DOE". Let's see if the contracts are equally bad.


In [8]:
usa_2012 = pd.read_csv('../new_data/2012_089_Contracts_Full_20190131_1.csv')


/Users/mbaumer/anaconda2/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2718: DtypeWarning: Columns (26,57,75,76,109) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [9]:
usa_2012.columns


Out[9]:
Index([u'award_id_piid', u'modification_number', u'transaction_number',
       u'parent_award_agency_id', u'parent_award_agency_name',
       u'parent_award_id', u'parent_award_modification_number',
       u'federal_action_obligation', u'total_dollars_obligated',
       u'base_and_exercised_options_value',
       ...
       u'native_hawaiian_servicing_institution', u'school_of_forestry',
       u'veterinary_college', u'dot_certified_disadvantage',
       u'self_certified_small_disadvantaged_business',
       u'small_disadvantaged_business', u'c8a_program_participant',
       u'historically_underutilized_business_zone_hubzone_firm',
       u'sba_certified_8a_joint_venture', u'last_modified_date'],
      dtype='object', length=261)

In [10]:
usa_2012['awarding_office_name']


Out[10]:
0        OFFICE OF ENVIRONMENTAL MANAGEMENT CONSOLIDATE...
1                        HEADQUARTERS PROCUREMENT SERVICES
2               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
3               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
4               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
5               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
6               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
7               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
8               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
9               CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
10              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
11              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
12                    OAK RIDGE OFFICE (OFFICE OF SCIENCE)
13              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
14                    OAK RIDGE OFFICE (OFFICE OF SCIENCE)
15              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
16              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
17              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
18                       HEADQUARTERS PROCUREMENT SERVICES
19              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
20              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
21              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
22              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
23                       HEADQUARTERS PROCUREMENT SERVICES
24                                   CARLSBAD FIELD OFFICE
25              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
26                              RICHLAND OPERATIONS OFFICE
27                              RICHLAND OPERATIONS OFFICE
28              CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)
29                    OAK RIDGE OFFICE (OFFICE OF SCIENCE)
                               ...                        
13796                     SAVANNAH RIVER OPERATIONS OFFICE
13797                    WESTERN-CORPORATE SERVICES OFFICE
13798                    HEADQUARTERS PROCUREMENT SERVICES
13799                    NATIONAL ENERGY TECHNOLOGY CENTER
13800                    HEADQUARTERS PROCUREMENT SERVICES
13801    NATIONAL NUCLEAR SECURITY ADMINISTRATION HEADQ...
13802                    HEADQUARTERS PROCUREMENT SERVICES
13803    NATIONAL NUCLEAR SECURITY ADMN BUSINESS SVCS D...
13804                    WESTERN-CORPORATE SERVICES OFFICE
13805                    NATIONAL ENERGY TECHNOLOGY CENTER
13806                           RICHLAND OPERATIONS OFFICE
13807                    HEADQUARTERS PROCUREMENT SERVICES
13808                    NATIONAL ENERGY TECHNOLOGY CENTER
13809                    SOUTHWESTERN POWER ADMINISTRATION
13810                    HEADQUARTERS PROCUREMENT SERVICES
13811                    HEADQUARTERS PROCUREMENT SERVICES
13812                 OAK RIDGE OFFICE (OFFICE OF SCIENCE)
13813                    WESTERN-CORPORATE SERVICES OFFICE
13814                    HEADQUARTERS PROCUREMENT SERVICES
13815                           RICHLAND OPERATIONS OFFICE
13816    NATIONAL NUCLEAR SECURITY ADMINISTRATION HEADQ...
13817                           RICHLAND OPERATIONS OFFICE
13818                     SAVANNAH RIVER OPERATIONS OFFICE
13819                              IDAHO OPERATIONS OFFICE
13820                           OFFICE OF RIVER PROTECTION
13821                    SOUTHWESTERN POWER ADMINISTRATION
13822                 OAK RIDGE OFFICE (OFFICE OF SCIENCE)
13823                      WESTERN-DESERT SOUTHWEST REGION
13824           PORTSMOUTH/PADUCAH PROJECT OFFICE (EM CBC)
13825                      WESTERN-DESERT SOUTHWEST REGION
Name: awarding_office_name, Length: 13826, dtype: object

What about directly downloading grants from 2012?


In [12]:
usa_2012 = pd.read_csv('~/Downloads/all_assistance_prime_transactions_1 2.csv')

In [13]:
usa_2012['awarding_office_name']


Out[13]:
0       NaN
1       NaN
2       NaN
3       NaN
4       NaN
5       NaN
6       NaN
7       NaN
8       NaN
9       NaN
10      NaN
11      NaN
12      NaN
13      NaN
14      NaN
15      NaN
16      NaN
17      NaN
18      NaN
19      NaN
20      NaN
21      NaN
22      NaN
23      NaN
24      NaN
25      NaN
26      NaN
27      NaN
28      NaN
29      NaN
         ..
11189   NaN
11190   NaN
11191   NaN
11192   NaN
11193   NaN
11194   NaN
11195   NaN
11196   NaN
11197   NaN
11198   NaN
11199   NaN
11200   NaN
11201   NaN
11202   NaN
11203   NaN
11204   NaN
11205   NaN
11206   NaN
11207   NaN
11208   NaN
11209   NaN
11210   NaN
11211   NaN
11212   NaN
11213   NaN
11214   NaN
11215   NaN
11216   NaN
11217   NaN
11218   NaN
Name: awarding_office_name, Length: 11219, dtype: float64

hmm, so the DATA act was only passed in 2014 -- maybe more recent data has this info?


In [4]:
usa = pd.read_csv('../new_data/2012_089_Contracts_Full_20190131_1.csv')


/Users/mbaumer/anaconda2/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2718: DtypeWarning: Columns (26,57,75,76,109) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [15]:
usa.columns.values


Out[15]:
array(['award_id_piid', 'modification_number', 'transaction_number',
       'parent_award_agency_id', 'parent_award_agency_name',
       'parent_award_id', 'parent_award_modification_number',
       'federal_action_obligation', 'total_dollars_obligated',
       'base_and_exercised_options_value', 'current_total_value_of_award',
       'base_and_all_options_value', 'potential_total_value_of_award',
       'action_date', 'period_of_performance_start_date',
       'period_of_performance_current_end_date',
       'period_of_performance_potential_end_date',
       'ordering_period_end_date', 'awarding_agency_code',
       'awarding_agency_name', 'awarding_sub_agency_code',
       'awarding_sub_agency_name', 'awarding_office_code',
       'awarding_office_name', 'funding_agency_code',
       'funding_agency_name', 'funding_sub_agency_code',
       'funding_sub_agency_name', 'funding_office_code',
       'funding_office_name', 'foreign_funding',
       'foreign_funding_description', 'sam_exception',
       'sam_exception_description', 'recipient_duns', 'recipient_name',
       'recipient_doing_business_as_name', 'cage_code',
       'recipient_parent_name', 'recipient_parent_duns',
       'recipient_country_code', 'recipient_country_name',
       'recipient_address_line_1', 'recipient_address_line_2',
       'recipient_city_name', 'recipient_state_code',
       'recipient_state_name', 'recipient_zip_4_code',
       'recipient_congressional_district', 'recipient_phone_number',
       'recipient_fax_number',
       'primary_place_of_performance_country_code',
       'primary_place_of_performance_country_name',
       'primary_place_of_performance_city_name',
       'primary_place_of_performance_county_name',
       'primary_place_of_performance_state_code',
       'primary_place_of_performance_state_name',
       'primary_place_of_performance_zip_4',
       'primary_place_of_performance_congressional_district',
       'award_or_idv_flag', 'award_type_code', 'award_type',
       'idv_type_code', 'idv_type', 'multiple_or_single_award_idv_code',
       'multiple_or_single_award_idv', 'type_of_idc_code', 'type_of_idc',
       'type_of_contract_pricing_code', 'type_of_contract_pricing',
       'award_description', 'action_type_code', 'action_type',
       'solicitation_identifier', 'number_of_actions',
       'inherently_governmental_functions',
       'inherently_governmental_functions_description',
       'product_or_service_code', 'product_or_service_code_description',
       'contract_bundling_code', 'contract_bundling',
       'dod_claimant_program_code', 'dod_claimant_program_description',
       'naics_code', 'naics_description',
       'recovered_materials_sustainability_code',
       'recovered_materials_sustainability',
       'domestic_or_foreign_entity_code', 'domestic_or_foreign_entity',
       'dod_acquisition_program_code',
       'dod_acquisition_program_description',
       'information_technology_commercial_item_category_code',
       'information_technology_commercial_item_category',
       'epa_designated_product_code', 'epa_designated_product',
       'country_of_product_or_service_origin_code',
       'country_of_product_or_service_origin',
       'place_of_manufacture_code', 'place_of_manufacture',
       'subcontracting_plan_code', 'subcontracting_plan',
       'extent_competed_code', 'extent_competed',
       'solicitation_procedures_code', 'solicitation_procedures',
       'type_of_set_aside_code', 'type_of_set_aside',
       'evaluated_preference_code', 'evaluated_preference',
       'research_code', 'research',
       'fair_opportunity_limited_sources_code',
       'fair_opportunity_limited_sources',
       'other_than_full_and_open_competition_code',
       'other_than_full_and_open_competition',
       'number_of_offers_received',
       'commercial_item_acquisition_procedures_code',
       'commercial_item_acquisition_procedures',
       'small_business_competitiveness_demonstration_program',
       'commercial_item_test_program_code',
       'commercial_item_test_program', 'a76_fair_act_action_code',
       'a76_fair_act_action', 'fed_biz_opps_code', 'fed_biz_opps',
       'local_area_set_aside_code', 'local_area_set_aside',
       'price_evaluation_adjustment_preference_percent_difference',
       'clinger_cohen_act_planning_code', 'clinger_cohen_act_planning',
       'materials_supplies_articles_equipment_code',
       'materials_supplies_articles_equipment', 'labor_standards_code',
       'labor_standards', 'construction_wage_rate_requirements_code',
       'construction_wage_rate_requirements',
       'interagency_contracting_authority_code',
       'interagency_contracting_authority', 'other_statutory_authority',
       'program_acronym', 'parent_award_type_code', 'parent_award_type',
       'parent_award_single_or_multiple_code',
       'parent_award_single_or_multiple', 'major_program',
       'national_interest_action_code', 'national_interest_action',
       'cost_or_pricing_data_code', 'cost_or_pricing_data',
       'cost_accounting_standards_clause_code',
       'cost_accounting_standards_clause', 'gfe_gfp_code', 'gfe_gfp',
       'sea_transportation_code', 'sea_transportation',
       'undefinitized_action_code', 'undefinitized_action',
       'consolidated_contract_code', 'consolidated_contract',
       'performance_based_service_acquisition_code',
       'performance_based_service_acquisition',
       'multi_year_contract_code', 'multi_year_contract',
       'contract_financing_code', 'contract_financing',
       'purchase_card_as_payment_method_code',
       'purchase_card_as_payment_method',
       'contingency_humanitarian_or_peacekeeping_operation_code',
       'contingency_humanitarian_or_peacekeeping_operation',
       'alaskan_native_owned_corporation_or_firm',
       'american_indian_owned_business',
       'indian_tribe_federally_recognized',
       'native_hawaiian_owned_business', 'tribally_owned_business',
       'veteran_owned_business',
       'service_disabled_veteran_owned_business', 'woman_owned_business',
       'women_owned_small_business',
       'economically_disadvantaged_women_owned_small_business',
       'joint_venture_women_owned_small_business',
       'joint_venture_economic_disadvantaged_women_owned_small_bus',
       'minority_owned_business',
       'subcontinent_asian_asian_indian_american_owned_business',
       'asian_pacific_american_owned_business',
       'black_american_owned_business',
       'hispanic_american_owned_business',
       'native_american_owned_business', 'other_minority_owned_business',
       'contracting_officers_determination_of_business_size',
       'contracting_officers_determination_of_business_size_code',
       'emerging_small_business',
       'community_developed_corporation_owned_firm',
       'labor_surplus_area_firm', 'us_federal_government',
       'federally_funded_research_and_development_corp', 'federal_agency',
       'us_state_government', 'us_local_government',
       'city_local_government', 'county_local_government',
       'inter_municipal_local_government', 'local_government_owned',
       'municipality_local_government',
       'school_district_local_government', 'township_local_government',
       'us_tribal_government', 'foreign_government',
       'organizational_type', 'corporate_entity_not_tax_exempt',
       'corporate_entity_tax_exempt',
       'partnership_or_limited_liability_partnership',
       'sole_proprietorship', 'small_agricultural_cooperative',
       'international_organization', 'us_government_entity',
       'community_development_corporation', 'domestic_shelter',
       'educational_institution', 'foundation', 'hospital_flag',
       'manufacturer_of_goods', 'veterinary_hospital',
       'hispanic_servicing_institution', 'receives_contracts',
       'receives_grants', 'receives_contracts_and_grants',
       'airport_authority', 'council_of_governments',
       'housing_authorities_public_tribal', 'interstate_entity',
       'planning_commission', 'port_authority', 'transit_authority',
       'subchapter_scorporation', 'limited_liability_corporation',
       'foreign_owned_and_located', 'for_profit_organization',
       'nonprofit_organization', 'other_not_for_profit_organization',
       'the_ability_one_program', 'number_of_employees', 'annual_revenue',
       'private_university_or_college',
       'state_controlled_institution_of_higher_learning',
       '1862_land_grant_college', '1890_land_grant_college',
       '1994_land_grant_college', 'minority_institution',
       'historically_black_college', 'tribal_college',
       'alaskan_native_servicing_institution',
       'native_hawaiian_servicing_institution', 'school_of_forestry',
       'veterinary_college', 'dot_certified_disadvantage',
       'self_certified_small_disadvantaged_business',
       'small_disadvantaged_business', 'c8a_program_participant',
       'historically_underutilized_business_zone_hubzone_firm',
       'sba_certified_8a_joint_venture', 'last_modified_date'],
      dtype=object)

In [23]:
print usa['action_date']


0        2012-09-26
1        2012-08-31
2        2012-07-30
3        2012-09-26
4        2012-06-28
5        2012-05-24
6        2012-06-11
7        2012-09-26
8        2012-08-28
9        2012-06-25
10       2012-03-28
11       2012-02-29
12       2012-01-18
13       2012-09-26
14       2012-04-26
15       2012-03-27
16       2012-05-24
17       2012-02-29
18       2012-09-17
19       2012-05-30
20       2012-08-29
21       2011-11-28
22       2012-06-26
23       2012-06-11
24       2012-04-25
25       2012-09-26
26       2012-04-26
27       2012-02-10
28       2012-08-30
29       2011-10-21
            ...    
13796    2011-10-06
13797    2011-10-06
13798    2011-10-06
13799    2011-10-06
13800    2011-10-06
13801    2011-10-06
13802    2011-10-06
13803    2011-10-17
13804    2011-10-06
13805    2011-10-06
13806    2011-10-05
13807    2011-10-05
13808    2011-10-05
13809    2011-10-05
13810    2011-10-05
13811    2011-10-14
13812    2011-10-14
13813    2011-10-14
13814    2011-10-14
13815    2011-10-05
13816    2011-10-05
13817    2011-10-05
13818    2011-10-05
13819    2011-10-05
13820    2011-10-05
13821    2011-10-05
13822    2011-10-04
13823    2011-10-04
13824    2011-10-04
13825    2011-10-04
Name: action_date, Length: 13826, dtype: object

In [82]:
def clean_doe_contract_data():
    print 'Generating DOE Contract data...'

    contract_file_list = glob('../new_data/*089_Contracts*.csv')
    contract_df_list = []
    for contract_file in contract_file_list:
        df = pd.read_csv(contract_file)
        df['Fiscal Year'] = contract_file[:4]
        contract_df_list.append(df)
    fulldata = pd.concat(contract_df_list,ignore_index=True)

    print len(fulldata)

    sc_awarding_offices = ['CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)',
                  'OAK RIDGE OFFICE (OFFICE OF SCIENCE)',
                  'SC CHICAGO SERVICE CENTER',
                  'SC OAK RIDGE OFFICE']

    sc_funding_offices = ['CHICAGO SERVICE CENTER (OFFICE OF SCIENCE)',
                          'OAK RIDGE OFFICE (OFFICE OF SCIENCE)',
                          'SCIENCE',
                          'SC OAK RIDGE OFFICE',
                          'SC CHICAGO SERVICE CENTER'
                         ]

    sc_contracts = fulldata[(fulldata['awarding_office_name'].isin(
        sc_awarding_offices)) | (fulldata['funding_office_name'].isin(sc_funding_offices))]

    #Clean data
    
    sc_contracts = sc_contracts[['award_id_piid', 'federal_action_obligation','recipient_name',
                                 'primary_place_of_performance_state_code',
                                 'primary_place_of_performance_congressional_district',
                                 'product_or_service_code_description',
                                 'Fiscal Year'
                                 ]]
    
    sc_contracts = sc_contracts.rename(columns = {
        'federal_action_obligation':'Amount ($)',
        'award_id_piid' : 'award_id',
        'recipient_name' : 'Vendor',
        'primary_place_of_performance_state_code' : 'State',
        'primary_place_of_performance_congressional_district' : 'District',
        'product_or_service_code_description' : 'Item'
    })
    
    sc_contracts = sc_contracts.dropna(subset=['District'])
    sc_contracts['District'] = sc_contracts['State'] + sc_contracts['District'].map(int).map(str).str.zfill(2)
    
    sc_contracts.to_pickle('../cleaned_data/sc_contracts.pkl')

In [83]:
contracts = clean_doe_contract_data()


Generating DOE Contract data...
89160

In [84]:
contracts_by_state = contracts.groupby(['State'])
contracts_by_district = contracts.groupby('District')

In [91]:
currentFY = 2019
n_years_desired = 6

N_YEARS_STR = '6'
END_YEAR = 2019

def get_state_contracts(distcode):
    try: 
        contracts_by_state.get_group(distcode)
    except KeyError: 
        print 'This state received no SC contracts from 2012-'+str(END_YEAR+1)
        return
    n_contracts = contracts_by_state.get_group(distcode)['Amount ($)'].count()
    total_contract_value = contracts_by_state.get_group(distcode)['Amount ($)'].sum()
    print 'In the past '+N_YEARS_STR+' years, this state has received:'
    print n_contracts, 'Office of Science contracts, totalling', '${:,.2f}'.format(total_contract_value)
    print ' '
    n_firms = len(contracts_by_state.get_group(distcode).groupby(['Vendor'])[['Amount ($)']])
    if n_firms < 4:
        print contracts_by_state.get_group(distcode).groupby(['Vendor','fiscal_year'])[['Amount ($)']].sum()
    else:
        print contracts_by_state.get_group(distcode).groupby(['Vendor'])[['Amount ($)']].sum().sort_values(['Amount ($)'],ascending=False).head(n=10)
        if n_firms > 10: print 'and ', n_firms-10, ' other firms.'

In [92]:
get_state_contracts('CA')


In the past 6 years, this state has received:
727 Office of Science contracts, totalling $9,867,990,504.05
 
                                                      Amount ($)
Vendor                                                          
THE REGENTS OF THE UNIVERSITY OF CALIFORNIA (1741)  6.199110e+09
STANFORD UNIVERSITY                                 3.662271e+09
LARTA, INC                                          4.600000e+06
HUMAN POTENTIAL CONSULTANTS, L.L.C.                 7.440448e+05
OUTSOURCE CONSULTING SERVICES, INC.                 6.092445e+05
LOCKWOOD HILLS FEDERAL, LLC                         3.774000e+05
NEXTSTEP TECHNOLOGY, INC                            1.432496e+05
IMPRES TECHNOLOGY SOLUTIONS, INC.                   6.179639e+04
ANNUAL REVIEWS, INC.                                3.555200e+04
HIRSCH ELECTRONICS LLC                              3.066012e+04
and  14  other firms.

In [121]:
import re
def clean_doe_grant_data():
    print 'Generating DOE Grant data...'
    dataA = pd.read_excel('../new_data/DOE-SC_Grants_FY2018.xlsx')
    data0 = pd.read_excel('../new_data/DOE-SC_Grants_FY2017.xlsx')
    data = pd.read_excel('../new_data/DOE-SC_Grants_FY2016.xlsx')
    data2 = pd.read_excel('../new_data/DOE-SC_Grants_FY2015.xlsx',
                          sheet_name='DOE SC Awards FY 2015')
    data3 = pd.read_excel('../new_data/DOE-SC_Grants_FY2014.xlsx',
                          sheet_name='DOE SC Awards FY 2014')
    data4 = pd.read_excel('../new_data/DOE-SC_Grants_FY2013.xlsx',
                          sheet_name='DOE SC Awards FY 2013', skiprows=1)
    data5 = pd.read_excel('../new_data/DOE-SC_Grants_FY2012.xlsx',
                          sheet_name='DOE SC Awards FY 2012')

    ### FIXES TO RAW DATA
    data2.loc[data2['Institution'] == 'University of Minnesota', 'Congressional District'] = 'MN-05'
    data4.loc[data4['Institution'] == 'CALIFORNIA INST. OF TECHNOLOGY', 'Congressional District *'] = 'CA-27'
    data3.loc[data3['Institution'] == 'California Institute of Technology (CalTech)', 'Congressional District'] = 'CA-27'
    data2.loc[data2['Institution'] == 'California Institute of Technology', 'Congressional District'] = 'CA-27'
    data.loc[data['Institution'] == 'California Institute of Technology', 'Congressional District'] = 'CA-27'
    data0.loc[data0['Institution'] == 'California Institute of Technology', 'Congressional District'] = 'CA-27'
    ### END FIXES

    institutions = pd.concat([dataA['Institution'],data0['Institution'], data['Institution'], data2['Institution'],
                              data3['Institution'], data4['Institution'], data5['Institution']], ignore_index=True, axis=0)
    districts = pd.concat([dataA['Congressional District'],data0['Congressional District'], data['Congressional District'], data2['Congressional District'],
                           data3['Congressional District'], data4['Congressional District *'], data5['Congressional District']], ignore_index=True, axis=0)
    amounts = pd.concat([dataA['Awarded Amount'],data0['Awarded Amount'], data['Awarded Amount'], data2['Awarded Amount'],
                         data3['Awarded Amount'], data4['FY 2013 Funding'], data5['2012 Funding']], ignore_index=True, axis=0)
    years = pd.Series(np.concatenate([2018 * np.ones(len(dataA)), 2017 * np.ones(len(data0)), 2016 * np.ones(len(data)), 2015 * np.ones(
        len(data2)), 2014 * np.ones(len(data3)), 2013 * np.ones(len(data4)), 2012 * np.ones(len(data5))]))
    states = pd.concat([dataA['State'], data0['State'], data['State/Territory'], data2['State/Territory'],
                        data3['State'], data4['State'], data5['State']], ignore_index=True, axis=0)
    programs = pd.concat([dataA['Program Office'], data0['Organization'], data['Organization'], data2['Organization'],
                          data3['Organization'], data4['SC Program'], data5['SC Program']], ignore_index=True, axis=0)
    fulldata = pd.concat([programs, years, states, districts, institutions, amounts], axis=1, keys=[
                         'SC Office', 'Year', 'State', 'District', 'Institution', 'Amount ($)'])

    fulldata['State'] = fulldata['State'].map(str).map(str.strip)
    
    agencies = fulldata['SC Office'].values
    abbrev_agencies = []
    for entry in list(agencies):
        test = re.split(r"\(|\)", str(entry))
        if len(test) > 1:
            abbrev_agencies.append(test[1])
        else:
            abbrev_agencies.append(test[0])
    fulldata['SC Office'] = abbrev_agencies

    hepdata = fulldata[fulldata['SC Office'] == 'HEP']
    return hepdata

In [122]:
test = clean_doe_grant_data()


Generating DOE Grant data...

In [124]:
test.tail()


Out[124]:
SC Office Year State District Institution Amount ($)
18925 HEP 2012.0 WA WA-07 UNIVERSITY OF WASHINGTON, SEATTLE 65000.0
18926 HEP 2012.0 WA WA-07 UNIVERSITY OF WASHINGTON, SEATTLE 10000.0
18927 HEP 2012.0 WA WA-07 UNIVERSITY OF WASHINGTON, SEATTLE 849000.0
18928 HEP 2012.0 WA WA-07 UNIVERSITY OF WASHINGTON, SEATTLE 1447000.0
19014 HEP 2012.0 WI WI-02 UNIVERSITY OF WISCONSIN, MADISON 3467000.0

In [106]:
test = pd.read_excel('../new_data/DOE-SC_Grants_FY2018.xlsx')

In [107]:
test.columns


Out[107]:
Index([u'Institution', u'City', u'State', u'Country', u'Zipcode',
       u'Congressional District', u'Award Number', u'Principlal Investigator',
       u'Awarded Amount', u'Action Type', u'Title', u'Award Type',
       u'Org. Code', u'Program Office', u'Division',
       u'Program Area/Topic - Subtopic', u'Current Project Period',
       u'Project End Date', u'Institution Type'],
      dtype='object')

In [110]:
test['Program Office']


Out[110]:
0                            Nuclear Physics (NP)
1                            Nuclear Physics (NP)
2                    Fusion Energy Sciences (FES)
3                     Basic Energy Sciences (BES)
4                     Basic Energy Sciences (BES)
5                     Basic Energy Sciences (BES)
6                     Basic Energy Sciences (BES)
7                     Basic Energy Sciences (BES)
8                     Basic Energy Sciences (BES)
9                       High Energy Physics (HEP)
10                           Nuclear Physics (NP)
11                    Basic Energy Sciences (BES)
12                    Basic Energy Sciences (BES)
13                    Basic Energy Sciences (BES)
14                    Basic Energy Sciences (BES)
15                    Basic Energy Sciences (BES)
16                    Basic Energy Sciences (BES)
17                    Basic Energy Sciences (BES)
18                    Basic Energy Sciences (BES)
19                    Basic Energy Sciences (BES)
20      Biological & Environmental Research (BER)
21      Biological & Environmental Research (BER)
22      Biological & Environmental Research (BER)
23                   Fusion Energy Sciences (FES)
24                    Basic Energy Sciences (BES)
25      Biological & Environmental Research (BER)
26                   Fusion Energy Sciences (FES)
27                   Fusion Energy Sciences (FES)
28                   Fusion Energy Sciences (FES)
29                   Fusion Energy Sciences (FES)
                          ...                    
2815    Biological & Environmental Research (BER)
2816    Biological & Environmental Research (BER)
2817    Biological & Environmental Research (BER)
2818                 Fusion Energy Sciences (FES)
2819                 Fusion Energy Sciences (FES)
2820                 Fusion Energy Sciences (FES)
2821                 Fusion Energy Sciences (FES)
2822                  Basic Energy Sciences (BES)
2823                  Basic Energy Sciences (BES)
2824                    High Energy Physics (HEP)
2825                         Nuclear Physics (NP)
2826                  Basic Energy Sciences (BES)
2827                  Basic Energy Sciences (BES)
2828                         Nuclear Physics (NP)
2829                         Nuclear Physics (NP)
2830                    High Energy Physics (HEP)
2831                    High Energy Physics (HEP)
2832                  Basic Energy Sciences (BES)
2833                  Basic Energy Sciences (BES)
2834                  Basic Energy Sciences (BES)
2835                  Basic Energy Sciences (BES)
2836                         Nuclear Physics (NP)
2837                         Nuclear Physics (NP)
2838                  Basic Energy Sciences (BES)
2839                  Basic Energy Sciences (BES)
2840                  Basic Energy Sciences (BES)
2841                    High Energy Physics (HEP)
2842                    High Energy Physics (HEP)
2843                    High Energy Physics (HEP)
2844                    High Energy Physics (HEP)
Name: Program Office, Length: 2845, dtype: object

In [166]:
def clean_nsf_grant_data():
    print 'Generating NSF Grant data...'

    contract_file_list = glob('../new_data/*049_Assistance*.csv')
    contract_df_list = []
    for contract_file in contract_file_list:
        df = pd.read_csv(contract_file)
        df['Fiscal Year'] = contract_file[:4]
        contract_df_list.append(df)
    fulldata = pd.concat(contract_df_list,ignore_index=True)
    
    mps_grants = fulldata[fulldata['cfda_title'].map(str.strip).map(str.lower) == 'mathematical and physical sciences']
    
    mps_grants = mps_grants[['cfda_title','federal_action_obligation',
                            'recipient_state_code', 'recipient_congressional_district',
                             'recipient_name'
                            ]]
    
    mps_grants = mps_grants.rename(columns = {
        'federal_action_obligation' : 'Amount ($)',
        'recipient_state_code' : 'State',
        'recipient_congressional_district' : 'District',
        'recipient_name' : 'Institution'
    })
    
    mps_grants = mps_grants.dropna(subset=['District'])

    mps_grants['District'] = mps_grants['State'] + mps_grants['District'].map(int).map(str).str.zfill(2)
    mps_grants.loc[mps_grants['District'] == 'OR00', 'State'] = 'PR'
    mps_grants.loc[mps_grants['District'] == 'OR00', 'District'] = 'PR00'

    return mps_grants

In [167]:
test = clean_nsf_grant_data()


Generating NSF Grant data...

In [170]:
test.groupby('District').get_group('PR00')


Out[170]:
cfda_title Amount ($) State District Institution
121 MATHEMATICAL AND PHYSICAL SCIENCES 1000000.0 PR PR00 UNIVERSITY OF PUERTO RICO
172 MATHEMATICAL AND PHYSICAL SCIENCES -201688.0 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
273 MATHEMATICAL AND PHYSICAL SCIENCES 152175.0 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
2653 MATHEMATICAL AND PHYSICAL SCIENCES 39846.0 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
2712 MATHEMATICAL AND PHYSICAL SCIENCES 264001.0 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
13286 MATHEMATICAL AND PHYSICAL SCIENCES 75000.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
14078 MATHEMATICAL AND PHYSICAL SCIENCES 119490.0 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
19277 MATHEMATICAL AND PHYSICAL SCIENCES 275000.0 PR PR00 U OF PUERTO RICO MAYAGUEZ
22030 MATHEMATICAL AND PHYSICAL SCIENCES 87500.0 PR PR00 U OF PR AT HUMACAO
26603 MATHEMATICAL AND PHYSICAL SCIENCES 117432.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
36012 MATHEMATICAL AND PHYSICAL SCIENCES 300000.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
41241 MATHEMATICAL AND PHYSICAL SCIENCES 255252.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
72137 MATHEMATICAL AND PHYSICAL SCIENCES 16500.0 PR PR00 UNIVERSITY OF PUERTO RICO MEDICAL SCIENCES CA
73229 MATHEMATICAL AND PHYSICAL SCIENCES 12000.0 PR PR00 UNIVERSITY OF PUERTO RICO
73351 MATHEMATICAL AND PHYSICAL SCIENCES 30236.0 PR PR00 UNIVERSITY OF PUERTO RICO
77248 MATHEMATICAL AND PHYSICAL SCIENCES 270000.0 PR PR00 UNIVERSITY OF PUERTO RICO
77266 MATHEMATICAL AND PHYSICAL SCIENCES 50000.0 PR PR00 UNIVERSITY OF PUERTO RICO
81010 MATHEMATICAL AND PHYSICAL SCIENCES 217256.0 PR PR00 UNIVERSITY OF PUERTO RICO
86906 MATHEMATICAL AND PHYSICAL SCIENCES 75000.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
91380 MATHEMATICAL AND PHYSICAL SCIENCES 185002.0 PR PR00 UNIVERSITY OF PUERTO RICO
102103 MATHEMATICAL AND PHYSICAL SCIENCES 412981.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
102714 MATHEMATICAL AND PHYSICAL SCIENCES 360000.0 PR PR00 UNIVERSITY OF PUERTO RICO
146188 MATHEMATICAL AND PHYSICAL SCIENCES 9999.0 PR PR00 UNIVERSITY OF PUERTO RICO143960193
150247 MATHEMATICAL AND PHYSICAL SCIENCES 149922.0 PR PR00 UNIVERSITY OF PUERTO RICO143960193
153197 MATHEMATICAL AND PHYSICAL SCIENCES 60000.0 PR PR00 UNIVERSITY OF PUERTO RICO143960193
160683 MATHEMATICAL AND PHYSICAL SCIENCES 107020.0 PR PR00 SISTEMA UNIVERSITARIO ANA G. MENDEZ, INC.
164508 MATHEMATICAL AND PHYSICAL SCIENCES 202082.0 PR PR00 UNIVERSITY OF PUERTO RICO

In [129]:
usa_2012 = pd.read_csv('../new_data/2012_049_Assistance_Full_20190131_1.csv')


/Users/mbaumer/anaconda2/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2718: DtypeWarning: Columns (34,48,65) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [134]:
usa_2012.columns


Out[134]:
Index([u'award_id_fain', u'modification_number', u'award_id_uri',
       u'sai_number', u'federal_action_obligation',
       u'non_federal_funding_amount', u'total_funding_amount',
       u'face_value_of_loan', u'original_subsidy_cost', u'total_subsidy_cost',
       u'total_loan_value', u'action_date',
       u'period_of_performance_start_date',
       u'period_of_performance_current_end_date', u'awarding_agency_code',
       u'awarding_agency_name', u'awarding_sub_agency_code',
       u'awarding_sub_agency_name', u'awarding_office_code',
       u'awarding_office_name', u'funding_agency_code', u'funding_agency_name',
       u'funding_sub_agency_code', u'funding_sub_agency_name',
       u'funding_office_code', u'funding_office_name', u'recipient_duns',
       u'recipient_name', u'recipient_parent_name', u'recipient_parent_duns',
       u'recipient_country_code', u'recipient_country_name',
       u'recipient_address_line_1', u'recipient_address_line_2',
       u'recipient_city_code', u'recipient_city_name',
       u'recipient_county_code', u'recipient_county_name',
       u'recipient_state_code', u'recipient_state_name', u'recipient_zip_code',
       u'recipient_zip_last_4_code', u'recipient_congressional_district',
       u'recipient_foreign_city_name', u'recipient_foreign_province_name',
       u'recipient_foreign_postal_code',
       u'primary_place_of_performance_country_code',
       u'primary_place_of_performance_country_name',
       u'primary_place_of_performance_code',
       u'primary_place_of_performance_city_name',
       u'primary_place_of_performance_county_code',
       u'primary_place_of_performance_county_name',
       u'primary_place_of_performance_state_name',
       u'primary_place_of_performance_zip_4',
       u'primary_place_of_performance_congressional_district',
       u'primary_place_of_performance_foreign_location', u'cfda_number',
       u'cfda_title', u'assistance_type_code', u'assistance_type_description',
       u'award_description', u'business_funds_indicator_code',
       u'business_funds_indicator_description', u'business_types_code',
       u'business_types_description', u'correction_delete_indicator_code',
       u'correction_delete_indicator_description', u'action_type_code',
       u'action_type_description', u'record_type_code',
       u'record_type_description', u'last_modified_date'],
      dtype='object')

In [146]:



Out[146]:
0         True
1         True
2        False
3         True
4         True
5         True
6         True
7         True
8         True
9         True
10        True
11        True
12        True
13        True
14        True
15        True
16        True
17       False
18        True
19        True
20        True
21        True
22        True
23       False
24        True
25        True
26        True
27        True
28        True
29        True
         ...  
24577     True
24578     True
24579     True
24580     True
24581     True
24582     True
24583     True
24584     True
24585     True
24586     True
24587     True
24588     True
24589     True
24590     True
24591     True
24592     True
24593     True
24594     True
24595     True
24596     True
24597     True
24598     True
24599     True
24600     True
24601     True
24602     True
24603     True
24604     True
24605     True
24606     True
Length: 24607, dtype: bool

In [172]:
np.ones(10,dtype=int)


Out[172]:
array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1])

In [176]:
test['Amount ($)'] = test['Amount ($)'].map(int)

In [177]:
test


Out[177]:
cfda_title Amount ($) State District Institution
2 MATHEMATICAL AND PHYSICAL SCIENCES 60000 DC DC00 HOWARD UNIVERSITY, INC.
5 MATHEMATICAL AND PHYSICAL SCIENCES 36443 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
8 MATHEMATICAL AND PHYSICAL SCIENCES 93442 DC DC00 HOWARD UNIVERSITY
11 MATHEMATICAL AND PHYSICAL SCIENCES 449195 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
19 MATHEMATICAL AND PHYSICAL SCIENCES 15620 DC DC00 HOWARD UNIVERSITY, INC.
20 MATHEMATICAL AND PHYSICAL SCIENCES 125082 DC DC00 GEORGE WASHINGTON UNIV
37 MATHEMATICAL AND PHYSICAL SCIENCES 545000 DC DC00 HOWARD UNIVERSITY, INC.
43 MATHEMATICAL AND PHYSICAL SCIENCES 10000 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
45 MATHEMATICAL AND PHYSICAL SCIENCES 83998 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
58 MATHEMATICAL AND PHYSICAL SCIENCES 10097 DC DC00 GEORGE WASHINGTON UNIV
72 MATHEMATICAL AND PHYSICAL SCIENCES 376245 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
85 MATHEMATICAL AND PHYSICAL SCIENCES 222000 DC DC00 THE GEORGE WASHINGTON UNIVERSITY
98 MATHEMATICAL AND PHYSICAL SCIENCES 22957 ME ME01 COLBY COLLEGE
103 MATHEMATICAL AND PHYSICAL SCIENCES 318000 VA VA00 JAMES MADISON UNIVERSITY
121 MATHEMATICAL AND PHYSICAL SCIENCES 1000000 PR PR00 UNIVERSITY OF PUERTO RICO
161 MATHEMATICAL AND PHYSICAL SCIENCES -90936 MI MI01 MICHIGAN TECHNOLOGICAL UNIVERSITY
163 MATHEMATICAL AND PHYSICAL SCIENCES 90936 IL IL07 UNIVERSITY OF ILLINOIS
172 MATHEMATICAL AND PHYSICAL SCIENCES -201688 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
206 MATHEMATICAL AND PHYSICAL SCIENCES 253463 MA MA05 HARVARD COLLEGE, PRESIDENT & FELLOWS OF
211 MATHEMATICAL AND PHYSICAL SCIENCES 11465 MA MA09 UNIVERSITY OF MASSACHUSETTS
215 MATHEMATICAL AND PHYSICAL SCIENCES 700000 NY NY25 ROCHESTER INSTITUTE OF TECHNOLOGY (INC)
217 MATHEMATICAL AND PHYSICAL SCIENCES -11465 TX TX34 UNIVERSITY OF TEXAS AT BROWNSVILLE
250 MATHEMATICAL AND PHYSICAL SCIENCES 284440 WA WA05 WASHINGTON STATE UNIVERSITY
260 MATHEMATICAL AND PHYSICAL SCIENCES 159045 CA CA32 AZUSA PACIFIC UNIVERSITY
263 MATHEMATICAL AND PHYSICAL SCIENCES 300000 CA CA13 MATHEMATICAL SCIENCES RESEARCH INSTITUTE
273 MATHEMATICAL AND PHYSICAL SCIENCES 152175 PR PR00 RECINTO UNIVERSITARIO MAYAGUEZ
279 MATHEMATICAL AND PHYSICAL SCIENCES 300000 NY NY23 CORNELL UNIVERSITY, INC
311 MATHEMATICAL AND PHYSICAL SCIENCES 400979 CT CT03 YALE UNIVERSITY
312 MATHEMATICAL AND PHYSICAL SCIENCES 675025 CT CT03 YALE UNIVERSITY
333 MATHEMATICAL AND PHYSICAL SCIENCES 220042 TX TX09 UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT
... ... ... ... ... ...
167305 MATHEMATICAL AND PHYSICAL SCIENCES -499999 CA CA49 SCRIPPS RESEARCH INSTITUTE, THE
167307 MATHEMATICAL AND PHYSICAL SCIENCES 220000 IL IL13 UNIVERSITY OF ILLINOIS
167323 MATHEMATICAL AND PHYSICAL SCIENCES 40000 MO MO04 UNIVERSITY OF MISSOURI SYSTEM
167330 MATHEMATICAL AND PHYSICAL SCIENCES 2549713 TX TX25 UNIVERSITY OF TEXAS AT AUSTIN
167332 MATHEMATICAL AND PHYSICAL SCIENCES 99036 IA IA02 UNIVERSITY OF IOWA, THE
167340 MATHEMATICAL AND PHYSICAL SCIENCES 20180 TX TX32 UNIVERSITY OF TEXAS AT DALLAS
167343 MATHEMATICAL AND PHYSICAL SCIENCES 92561 IL IL13 UNIVERSITY OF ILLINOIS
167346 MATHEMATICAL AND PHYSICAL SCIENCES -92561 MA MA07 MASSACHUSETTS INSTITUTE OF TECHNOLOGY
167353 MATHEMATICAL AND PHYSICAL SCIENCES 19341 OK OK04 UNIVERSITY OF OKLAHOMA
167369 MATHEMATICAL AND PHYSICAL SCIENCES 142670 MO MO01 WASHINGTON UNIVERSITY, THE
167371 MATHEMATICAL AND PHYSICAL SCIENCES 115237 CT CT02 UNIVERSITY OF CONNECTICUT
167374 MATHEMATICAL AND PHYSICAL SCIENCES 15000 NY NY01 THE RESEARCH FOUNDATION OF STATE UNIVERSITY O
167375 MATHEMATICAL AND PHYSICAL SCIENCES -115237 TX TX25 UNIVERSITY OF TEXAS AT AUSTIN
167376 MATHEMATICAL AND PHYSICAL SCIENCES 47560 IL IL01 UNIVERSITY OF CHICAGO, THE
167377 MATHEMATICAL AND PHYSICAL SCIENCES 39505 TX TX15 UNIVERSITY OF TEXAS RIO GRANDE VALLEY (UTRGV)
167378 MATHEMATICAL AND PHYSICAL SCIENCES 45000 OH OH11 CASE WESTERN RESERVE UNIVERSITY
167380 MATHEMATICAL AND PHYSICAL SCIENCES 40000 LA LA06 LOUISIANA STATE UNIVERSITY SYSTEM
167389 MATHEMATICAL AND PHYSICAL SCIENCES 36282 IN IN04 PURDUE UNIVERSITY
167407 MATHEMATICAL AND PHYSICAL SCIENCES 50000 NJ NJ12 TRUSTEES OF PRINCETON UNIVERSITY, THE
167409 MATHEMATICAL AND PHYSICAL SCIENCES 22480 HI HI01 UNIVERSITY OF HAWAII SYSTEMS
167411 MATHEMATICAL AND PHYSICAL SCIENCES 29000 TX TX17 TEXAS A & M UNIVERSITY
167413 MATHEMATICAL AND PHYSICAL SCIENCES -16856 TX TX25 UNIVERSITY OF TEXAS AT AUSTIN
167415 MATHEMATICAL AND PHYSICAL SCIENCES 216856 CA CA49 UNIVERSITY OF CALIFORNIA, SAN DIEGO
167417 MATHEMATICAL AND PHYSICAL SCIENCES 44014 PA PA05 PENNSYLVANIA STATE UNIVERSITY, THE
167486 MATHEMATICAL AND PHYSICAL SCIENCES -74929 AL AL05 UNIVERSITY OF ALABAMA IN HUNTSVILLE
167489 MATHEMATICAL AND PHYSICAL SCIENCES -7051 AL AL05 UNIVERSITY OF ALABAMA IN HUNTSVILLE
167490 MATHEMATICAL AND PHYSICAL SCIENCES 102257 IN IN09 TRUSTEES OF INDIANA UNIVERSITY
167493 MATHEMATICAL AND PHYSICAL SCIENCES -102257 OK OK03 OKLAHOMA STATE UNIVERSITY
167501 MATHEMATICAL AND PHYSICAL SCIENCES -42104 WI WI02 UNIVERSITY OF WISCONSIN SYSTEM
167508 MATHEMATICAL AND PHYSICAL SCIENCES 42104 GA GA05 GEORGIA TECH RESEARCH CORPORATION

32280 rows × 5 columns


In [ ]: