Python请求包,包含包含百分比的Census API数据集

2024-09-30 22:25:27 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,这是我第一次使用人口普查API(或任何API),到目前为止我已经有了一些运气。我没有使用census包或cenpy,而是手工创建了URL,因为这并不困难。在

例如,下面的例子成功地为我提供了各州和国会选区说不同语言的人数。在

这是有效的:

r = requests.get('https://api.census.gov/data/2016/acs/acs1/subject?get=S1601_C01_002E,S1601_C01_004E,S1601_C01_008E,S1601_C01_012E&for=congressional%20district:*&in=state:*&key=<my key>')
r.status_code
data = r.json()
df = pd.DataFrame(data)
header = df.iloc[0]
df = df[1:]
df.columns = header
lang = df.rename(columns = {'congressional district': 'cd',
                 'S1601_C01_002E': 'English',
                 'S1601_C01_004E': 'Spanish',
                 'S1601_C01_008E': 'IndoEuropean',
                 'S1601_C01_012E': 'AsianPacific'})

但是,我现在感兴趣的是检索一个百分数的变量。当我尝试拉取它时,字段中的所有值都得到-88888888888。我假设有一种简单的方法可以以我丢失的正确格式检索这些数据。有人知道那是什么吗?在

错误代码:

^{pr2}$

结果:

 [['S1501_C01_015E', 'state', 'congressional district'],
 ['-888888888', '01', '01'],
 ['-888888888', '01', '02'],
 ['-888888888', '01', '03'],
 ['-888888888', '01', '04'],
 ['-888888888', '01', '05'],...

Tags: columnskeyapidfdatagetheaderstate