R表函数,包括过滤出的行

我有一个用readRDS作为df读取的数据框。这包含许多带有城市和州的行。我仅将加利福尼亚州的数据保留为df_ca。 df_ca包含100列,而我仅保留一些分类列。我创建一个名为df_cat的新分类df。我想遍历分类列并使用表函数获取频率。忽略用于故障排除的循环,我将var设置为“ city”,并执行表函数以创建一个名为cat_freq的新df。 cat_freq包含df而非df_ca的所有城市,其Freq为0。如果将它们过滤掉,为什么甚至显示它们?我是R的新手,但具有python背景

df <- as.data.frame(readRDS('some.data.5140')) 
df_ca <- df[df$car.state == "ca",]
cat_col <- (unlist(list('color', 'city', 'deliver', 'type')))
df_cat <- df_ca[, cat_col]
var <- "city"
cat_freq <-  data.frame(table(df_cat[var]))
评论