2017-02-25 5 views
1

api.govのbusinesstypeのリストを入力として返す関数を適用しようとしています。 URLを構築するには、パンダのデータフレームからduns番号を使用します。各行の値を入力として使用するデータフレーム内の列の関数を適用します。

import pandas as pd 
from requests.compat import urljoin, quote_plus 

def get_business_types(c): 
    base_url = 'https://api.data.gov/sam/v1/registrations/' 
    duns = c['duns_normal'] 
    final_url = base_url + duns + '0000' 
    request = requests.get(final_url, params=params) 
    data = request.json() 
    result = data['sam_data']['registration']['businessTypes'] 
    return result 

duns['business_types'] =duns['duns_normal'].apply(get_business_types) 

私はこの種のラインではっきりしていませんduns = c['duns_normal']これは間違いありませんか?私はどのように私はURLを構築することができますduns番号を取得するのですか?

答えて

1

applyを列に使用すると、一度に1つの値が渡されます。したがって、以下は十分です。

import pandas as pd 
from requests.compat import urljoin, quote_plus 

def get_business_types(c): 
    print(c) 
    base_url = 'https://api.data.gov/sam/v1/registrations/' 
    #duns = c['duns_normal'] 
    final_url = base_url + str(c) + '0000' 
    request = requests.get(final_url, params=params) 
    data = request.json() 
    result = data['sam_data']['registration']['businessTypes'] 
    return result 

duns['business_types'] =duns['duns_normal'].apply(get_business_types) 
関連する問題