汉明距离:
例如,两个二进制数:1011和1000的HD(汉明距离)是2.
10000和01111的HD是5.
这是代码:
有人可以向我解释一下吗?
谢谢!
short HammingDist(short x, short y)
{
short dist = 0;
char val = x^y;// what's the meaning?
while(val)
{
++dist;
val &= val - 1; // why?
}
return dist;
}
Run Code Online (Sandbox Code Playgroud) 人口普查局没有提供全国范围的公共使用微观数据区域(美国社区调查中可用的最小地理位置).我尝试将它们全部用几种不同的方法组合在一起,但即使是那些一旦它击中加利福尼亚就会使标识符失效的方法.我是在做傻事还是这需要一个困难的解决方法?这里是重现事情的代码.
library(taRifx.geo)
library(maptools)
td <- tempdir() ; tf <- tempfile()
setInternet2( TRUE )
download.file( "ftp://ftp2.census.gov/geo/tiger/TIGER2014/PUMA/" , tf )
al <- readLines( tf )
tl <- al[ grep( "geo/tiger/TIGER2014/PUMA/tl_2014_" , al ) ]
fp <- gsub( "(.*)geo/tiger/TIGER2014/PUMA/tl_2014_([0-9]*)_puma10\\.zip(.*)" , "\\2" , tl )
# get rid of alaska
fp <- fp[ fp != '02' ]
af <- paste0( "ftp://ftp2.census.gov/geo/tiger/TIGER2014/PUMA/tl_2014_" , fp , "_puma10.zip" )
d <- NULL
for ( i in af ){
try( file.remove( z ) , silent = TRUE ) …
Run Code Online (Sandbox Code Playgroud) 我可以实现我的目标"漫长的道路",但我希望完全保留在R内.我希望通过邮政编码将人口普查的人口统计数据附加到我的数据库中的记录中.我知道R有几个基于Census的软件包,但是,除非我遗漏了一些东西,否则这些数据似乎不存在于邮政编码级别,也不是直观地合并到现有数据框架上.
简而言之,是否可以在R中执行此操作,或者是我在其他地方获取数据并将其读入R的最佳方法?
任何帮助将不胜感激!
我试图通过使用他们的API 来查询来自http://www.census.gov的数据我希望通过使用城市名称和美国州代码来获取美国特定城市的人口.
鉴于我已经拥有密钥,我在下面的URL中添加了哪些其他参数,以便我可以获得人口.
http://api.census.gov/data/2010/sf1?key=<my key>
Run Code Online (Sandbox Code Playgroud)
任何援助将不胜感激
我想知道在 R 中使用传单包绘制大量标记和多边形时是否有其他人遇到过类似的问题。这通常应该是这样的:
但是,当我放大/缩小地图时,多边形和标记显然不合适(或者您可以说底图没有正确调整)。下面包含一个示例:
当我绘制较小的区域或很少的标记时,我不会遇到这个问题。我想知道是否有办法提高性能。非常感谢您的帮助!
我的代码示例如下:
map1 <- leaflet() %>%
addProviderTiles("CartoDB.Positron") %>%
addPolygons(data = data_merged, group="Default",
fillColor = ~pal(minority_population), color = "orange",
fillOpacity = 0.7,weight = 1, smoothFactor = 0.2, popup = popup) %>%
addMarkers(data = branches_temp, ~long, ~lat,
popup=~name_branch, group="Branch Locations",
icon=icons(iconUrl = "./data/bank_blue_marker.png",iconWidth=20, iconHeight=20))
Run Code Online (Sandbox Code Playgroud) 我的问题涉及通过choroplethr和choroplethrZip在MSA级别上绘制整个美国地图.
在下面的示例中,我们绘制1)美国县级地图上的人口普查人口信息和2)选定的城市/微观统计区域(MSA)级别的缩放地图.
示例R代码:
library(choroplethr)
library(choroplethrZip)
?zip.regions
data(zip.regions)
head(zip.regions)
?df_pop_county
data(df_pop_county)
df_pop_county
?df_pop_zip
data(df_pop_zip)
# U.S. County Population Data
county_choropleth(df_pop_county, legend = "Population")
# NY-NJ-PA MSA Population Data
zip_choropleth(df_pop_zip,
msa_zoom = "New York-Newark-Jersey City, NY-NJ-PA",
title = "2012 NY-Newark-Jersey City MSA\nZCTA Population Estimates",
legend = "Population")
Run Code Online (Sandbox Code Playgroud)
我们还可以绘制整个MSA级别的美国地图,而不仅仅是放大特定的MSA吗?像这样的方法
zip_choropleth(df_pop_zip, legend = "Population")
Run Code Online (Sandbox Code Playgroud)
没有用,也可能会策划ZCTA地区,而不是MSA地区.
谢谢!
我想使用人口普查的县邻接数据,但我坚持把它变成一个很好的形式.数据分为四列:第一个县,第一个代码,第二个县,第二个代码.第一个县列不重复,而是以我现在阅读的方式取值"":
c1 cd1 c2 cd2
1 Alamance County, NC 37001 Alamance County, NC 37001
2 NA Caswell County, NC 37033
3 NA Chatham County, NC 37037
4 NA Guilford County, NC 37081
5 NA Orange County, NC 37135
6 NA Randolph County, NC 37151
7 NA Rockingham County, NC 37157
8 Alexander County, NC 37003 Alexander County, NC 37003
9 NA Caldwell County, NC 37027
10 NA Catawba County, NC 37035
11 NA Iredell County, NC …
Run Code Online (Sandbox Code Playgroud) 我希望使用 tidycensus 包自动化从美国的所有区块组下载人口普查数据的过程。开发人员提供了下载美国境内所有区块的说明,但是,无法使用相同的方法访问块组。
这是我当前不起作用的代码
library(tidyverse)
library(tidycensus)
census_api_key("key here")
# create lists of state and county codes
data("fips_codes")
temp <- data.frame(state = as.character(fips_codes$state_code),
county = fips_codes$county_code,
stringsAsFactors = F)
temp <- aggregate(county~state, temp, c)
state <- temp$state
coun <- temp$county
# use map2_df to loop through the files, similar to the "tract" data pull
home <- map2_df(state, coun, function(x,y) {
get_acs(geography = "block group", variables = "B25038_001", #random var
state = x,county = y)
})
Run Code Online (Sandbox Code Playgroud)
由此产生的错误是
No …
Run Code Online (Sandbox Code Playgroud) 我有一个包含经度和纬度坐标的数据集。我想检索相应的人口普查区。是否有可以允许我执行此操作的数据集或api?
我的数据集如下所示:
lat lon
1 40.61847 -74.02123
2 40.71348 -73.96551
3 40.69948 -73.96104
4 40.70377 -73.93116
5 40.67859 -73.99049
6 40.71234 -73.92416
Run Code Online (Sandbox Code Playgroud)
我想添加一列带有相应的人口普查区域的信息。
最终输出应类似于以下内容(这些不是正确的数字,只是一个示例)。
lat lon Census_Tract_Label
1 40.61847 -74.02123 5.01
2 40.71348 -73.96551 20
3 40.69948 -73.96104 41
4 40.70377 -73.93116 52.02
5 40.67859 -73.99049 58
6 40.71234 -73.92416 60
Run Code Online (Sandbox Code Playgroud) census ×10
r ×7
api ×2
gis ×2
c++ ×1
choroplethr ×1
d3.js ×1
data.table ×1
function ×1
ggmap ×1
google-maps ×1
javascript ×1
leaflet ×1
loops ×1
map ×1
plot ×1
population ×1
shapefile ×1
short ×1
tigris ×1