无法过滤 R 中的变量 - 人口普查数据

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

我正在处理 R 中的大型人口普查数据。我正在缩小选定的人口特征范围,并尝试按照特定标准过滤掉给定国家/地区内最高的人口。

使用

arrange(desc())
确定主要人群。很少有国家被标记为 top.nativity.country,以使过滤更容易。然而,每次尝试
filter()
都会生成一个 0x3 表;也就是说,它给了我一张空桌子。

供参考:

#rename columns 
names(nativity.roxbury) <- c("Nativity","Population Estimate", "Marigin of Error")
 
#Components Comparisson Suffolk
top.nativity.country <- c("Dominican Republic", "Cabo Verde","Jamaica","Haiti","Trinidad and Tobago", "Somalia","China")

nativity.roxbury %>% arrange(desc(`Population Estimate`)) %>% filter("Nativity" %in% top.nativity.country)

数据来源于此美国人口普查局链接。

dplyr filter
1个回答
0
投票

我使用以下代码来检查 Nativity 列中是否存在任何前导或尾随空格或大小写差异,从而解决了该问题。

修剪空格并转换为小写

nativity.roxbury$Nativity <- str_trim(nativity.roxbury$Nativity)
nativity.roxbury$Nativity <- tolower(nativity.roxbury$Nativity)

将 top.nativity.country 转换为小写

top.nativity.country <- tolower(top.nativity.country)

调整后过滤

filtered_data_nativity <- nativity.roxbury %>%
  arrange(desc(`Population Estimate`)) %>%
  filter(Nativity %in% top.nativity.country)

print(filtered_data_nativity)
© www.soinside.com 2019 - 2024. All rights reserved.