首页 > 解决方案 > R:在满足列条件时选择案例

问题描述

我有一个这样的数据框:

x y z country
1 4 1 USA
3 1 1 Canada
0 1 1 Spain
0 2 3 USA
4 1 1 Canada

我需要在所有数据框中选择至少出现 1000 次的国家/地区的数据。例如,假设只有美国和加拿大满足该条件。问题是我有 40 多个国家和 500000 个案例,所以我不能逐个处理。

我想我需要一个循环“for”来做到这一点,但我不知道该怎么做。

标签: rloops

解决方案


首先获取您想要的国家/地区的名称。然后按这些名称进行子集化。

tab <- table(df$country)
mycountries <- names(tab[tab > 1000])
df <- df[df$country %in% mycountries, ]

推荐阅读