【发布时间】:2012-09-11 02:40:39
【问题描述】:
我试图通过从 HOUSE 列中提取数字来为“好”和“坏”创建一个虚拟变量。我想要做的是,如果 HOUSE 列中的值为 1、2、9,则房子为“好”,否则为“坏”)
我正在粘贴我的 data.frame 对象的 dput 输出。
## dput output assigned to the housetype variable
structure(list(Price = c(10L, 20L, 31L, 41L, 52L, 63L, 45L, 63L,
64L, 45L), Location = structure(c(4L, 7L, 6L, 3L, 2L, 4L, 5L,
1L, 6L, 8L), .Label = c("AK", "ATL", "BOS", "DC", "GA", "MA",
"NYC", "PA"), class = "factor"), HOUSE = c(1L, 1L, 1L, 2L, 6L,
7L, 8L, 9L, 10L, 11L)), .Names = c("Price", "Location", "HOUSE"
), class = "data.frame", row.names = c(NA, -10L))
如何创建一个虚拟变量,让每个变量都包含其他信息? (价格和位置)
谢谢!!!
【问题讨论】:
-
我认为这有点不同,因为我不只是试图对前 10 个值进行分组。我正在尝试获取特定数值的虚拟变量。
-
你可能想看看
ifelse和%in% -
您仍在寻找
%in%,如该答案中所述...... -
类似
within(DF, quality <- ifelse(HOUSE %in% c(1,2,9), 'good','bad'))
标签: r