作家
登录

10行Python代码创建可视化地图

作者: 来源: 2017-09-05 09:48:17 阅读 我要评论

我们的数据并非没有争议无需改革——用户须要确保 geoJSON 键与熊猫数据框架之间具有1:1的映射。下面就是之前实例所需的简明的数据框架映射:我们的国度信息是一个列有FIPS 码、国度名称、以及经济信息(列名省略)的 CSV 文件:

  1. 00000,US,United States,154505871,140674478,13831393,9,50502,100 
  2.  
  3. 01000,AL,Alabama,2190519,1993977,196542,9,41427,100 
  4.  
  5. 01001,AL,Autauga County,25930,23854,2076,8,48863,117.9 
  6.  
  7. 01003,AL,Baldwin County,85407,78491,6916,8.1,50144,121 
  8.  
  9. 01005,AL,Barbour County,9761,8651,1110,11.4,30117,72.7  

在 geoJSON 中,我们的国度外形是以 FIPS 码为id 的(感激 fork 自 Trifacta 的相干信息)。为了简便,实际外形已经做了简单,在示例数据可以找到完全的数据集:

我们须要匹配 FIPS 码,确保匹拍┞俘确,不然 Vega 无法精确的紧缩数据:

  1. import json 
  2. import pandas as pd 
  3. #Map the county codes we have in our geometry to those in the 
  4. #county_data file, which contains additional rows we don't need 
  5. with open(county_geo, 'r'as f: 
  6.     get_id = json.load(f) 
  7.  
  8. #Grab the FIPS codes and load them into a dataframe 
  9. county_codes = [x['id'for x in get_id['features']] 
  10. county_df = pd.DataFrame({'FIPS_Code': county_codes}, dtype=str) 
  11.  
  12. #Read into Dataframe, cast to string for consistency 
  13. df = pd.read_csv(county_data, na_values=[' ']) 
  14. df['FIPS_Code'] = df['FIPS_Code'].astype(str) 
  15.  
  16. #Perform an inner join, pad NA's with data from nearest county 
  17. merged = pd.merge(df, county_df, on='FIPS_Code', how='inner'
  18. merged = merged.fillna(method='pad'
  19.  
  20. >>>merged.head() 
  21.       FIPS_Code State       Area_name  Civilian_labor_force_2011  Employed_2011  \ 
  22.     0      1001    AL  Autauga County                      25930          23854    

      推荐阅读

      刘强东英文接受采访:我看重品质 所以模式与阿里不同

    大年夜第一天起,刘强东(微博)就定下了一个准则,只和有名品牌合作。 刘强东称做自营最看重质量,并且自营体系须要很长时光构建,然后向第三方卖家开放,这也是>>>详细阅读


    本文标题:10行Python代码创建可视化地图

    地址:http://www.17bianji.com/lsqh/37136.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)