如何基于县分解普查数据,并在此过程中对列数据求和

问题描述 投票:0回答:1

我正在使用新泽西州2010年人口普查的人口普查数据。我想基于县进行分析,因此(希望)使生活更轻松,我希望将2010年人口普查区域的行普查数据(是的,以某种方式表示行数)折叠为21行县。

数据的类是SpatialPolygonsDataFrame

因此,从这个开始(例如,数字是由数字组成的,并且我正在使用的文件有91列我想加起来):

TRACTCE10  COUNTYFP10  POP
01           03         231
02           03        45
03           03         450
04           07         567
05           07          102

对此:

TRACTCE10  COUNTYFP10   POP
X (note)      03         727
Y            07          669

((注))我不确定如何处理合并字段列,我应该将它们全部删除,还是在最终输出中忽略它们的总和?我想除了汇总每个人口统计栏中的数字外,还需要合并这些多边形。

[基本上,我根本不知道从哪里开始,因为我对R很陌生,每次去问教授一个问题时,他都会说我“超越自己”,拒绝帮助我,但似乎会有一个非常简单的答案的东西。

非常感谢您的帮助。我不确定什么代码甚至会有用,所以如果您需要我提供任何其他信息,请告诉我。

r gis spatial census
1个回答
0
投票

有很多好的方法可以做到这一点,但是库dplyr提供了直观而直接的方法来做到这一点。

使用数据,您首先要按COUNTYFP10分组,然后计算所有其他列的总和。代码如下:

## For replicability:
z <- "TRACTCE10  COUNTYFP10  POP
01           03         231
02           03        45
03           03         450
04           07         567
05           07          102"

df <- read.table(text=z, header=T)

library(dplyr)

output <- df %>%
  group_by(COUNTYFP10) %>%
  summarize_at(vars(-TRACTCE10), sum)

> output
# A tibble: 2 x 2
  COUNTYFP10   pop
       <int> <int>
1          3   726
2          7   669

您可以使用对vars()的调用来排除没有意义的总和(在这种情况下为TRACTCE10)。

© www.soinside.com 2019 - 2024. All rights reserved.