2017-02-25 35 views
1

我试图应用一个函数,该函数从api.gov返回作为输入的businesstypes列表。要构建它使用来自熊猫数据框的冬季号码的网址。在数据框中应用使用每行值作为输入的列的函数

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']这是正确的吗?我如何获得冬季编号,以便构建网址?

回答

1

当您在列上使用apply时,它一次传递一个值。所以下面就足够了。

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)