使用addfips将FIPS代码添加到Python中的csv中

2024-05-18 23:30:52 发布

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

我正在使用Python库addfips向包含statecounty的csv添加FIPS代码。您可以在此处找到addfips的文档:https://pypi.org/project/addfips/

我已经成功导入了我选择的csv,也成功导入了addfips。我不知道如何应用get_county_fips函数来迭代csv中的每一行,但我认为最好使用lambda函数。lambda函数似乎正在工作,但我现在正在努力处理get_county_fips函数所需的参数

以下是我的csv的几行内容:

state ,county   
AK, CITY & BOROUGH OF JUNEAU    
AK,CITY & BOROUGH OF SITKA      
WY, SWEETWATER  
WY, TETON   
WY, UINTA

这是我的密码:

af = addfips.AddFIPS() 
csv.apply(lambda x: af.get_county_fips(x))

下面是返回的错误:

TypeError: get_county_fips() missing 1 required positional argument: 'state'

问题是,我使用的csv文件有多个状态,所以我不确定输入什么作为参数。包含state和county的列的名称分别命名为“state”和“county”。有人能告诉我正确的论点是什么样的吗

谢谢大家!


Tags: ofcsvlambda函数city参数getak
1条回答
网友
1楼 · 发布于 2024-05-18 23:30:52

链接中的FIPS文档显示了一个示例(即原始数据文件),如注释列标签和字段之间的逗号

state,county,statistic
IL,Cook,123
California,Los Angeles County,321
New York,Kings,137
LA,Orleans,99
Alaska,Kusilvak,12

然后,AddFIPS api显示了以下示例:

>>> import addfips
>>> af = addfips.AddFIPS()
>>> af.get_state_fips('Puerto Rico')
'72'
>>> af.get_county_fips('Nye', state_name='Nevada')
'32023'
>>> row = {'county': 'Cook County', 'state': 'IL'}
>>> af.add_county_fips(row, county_field="county", state_field="state")
{'county': 'Cook County', 'state': 'IL', 'fips': '17031'}

能否从api中提取FIPS标识符?如果在CSV文件上循环不按预期工作,请考虑每次尝试一个,手动扩展它。

相关问题 更多 >

    热门问题