R 基于计数的过滤因子变量
我有一个包含房价数据的数据框,里面有价格和很多变量。其中一个变量是房地产的“子区域”,我试图将其纳入各种回归中。然而,它是一个因子变量,几乎有3000个水平 例如:R 基于计数的过滤因子变量,r,regression,R,Regression,我有一个包含房价数据的数据框,里面有价格和很多变量。其中一个变量是房地产的“子区域”,我试图将其纳入各种回归中。然而,它是一个因子变量,几乎有3000个水平 例如: table(df$sub_area) La Jolla 2 Carlsbad 5 Esconsido 1 等等 我想过滤掉那些只有1个计数的地方,因为它们没有提供太多的预测能力,但增加了大量的计算时间。但是,我希望将该属性的sub_区域条目替换为空白或NA,因为我仍然希望使用该属性的其余信息,例如卧室、浴室等 作
table(df$sub_area)
La Jolla
2
Carlsbad
5
Esconsido
1
等等
我想过滤掉那些只有1个计数的地方,因为它们没有提供太多的预测能力,但增加了大量的计算时间。但是,我希望将该属性的sub_区域条目替换为空白或NA,因为我仍然希望使用该属性的其余信息,例如卧室、浴室等
作为参考,单个属性条目可能如下所示:
ID Beds Baths City Sub_area sqm... etc
1 4 2 San Diego La Jolla 100....
那我就可以了
lm(价格~床+浴室+城市+子区域)
在新的、更小的sub_区域变量下,级别更少
我之所以这么做,是因为我工作的地点的sub_区域包含了大部分预测价格能力 您没有给出一个可复制的示例,但我认为这将有助于识别计数=1的位置
count_1 <- as.data.frame(table(df$sub_area))
count_1 <- count_1$Var1[which(count_1$Freq==1)]
count\u 1您没有给出一个可重复的示例,但我认为这将有助于识别count==1的位置
count_1 <- as.data.frame(table(df$sub_area))
count_1 <- count_1$Var1[which(count_1$Freq==1)]
count_1单向:
areas <- names(which(table(df$Sub_area) > 10))
df$Sub_area[! df$Sub_area %in% areas] <- NA
10区)
df$Sub_区域[!df$Sub_区域%在%区域中]单向:
areas <- names(which(table(df$Sub_area) > 10))
df$Sub_area[! df$Sub_area %in% areas] <- NA
10区)
df$Sub_area[!df$Sub_area%in%area]创建一个新的数据帧,其中包含每个子区域的出现次数,并保留至少出现两次的子区域
如果子区域未出现在过滤后的sub\u区域\u计数中,则将NA
s添加到原始数据帧中
library(dplyr)
sub_area_count <- df %>%
count(sub_area) %>%
filter(n > 1)
boo <- !df$sub_area %in% sub_area_count$sub_area
df[boo, ]$sub_area <- NA
库(dplyr)
子区域计数%
计数(子区域)%>%
过滤器(n>1)
boo创建一个新的数据帧,其中包含每个分区的出现次数,并保持至少出现两次的分区
如果子区域未出现在过滤后的sub\u区域\u计数中,则将NA
s添加到原始数据帧中
library(dplyr)
sub_area_count <- df %>%
count(sub_area) %>%
filter(n > 1)
boo <- !df$sub_area %in% sub_area_count$sub_area
df[boo, ]$sub_area <- NA
库(dplyr)
子区域计数%
计数(子区域)%>%
过滤器(n>1)
boo看看是不是这样:。或者是这个。看看是不是这个:。或者是这个。