R 尝试创建带有标签的因子变量时收到以下错误消息:错误为unique。默认值(x,nmax=nmax):unique()仅适用于向量
我试图创建一个新的变量,重新编码,把它变成一个带有新标签的因子变量。重新编码的第一部分正常,但当我尝试转换为因子变量时,它会给我以下消息:Error in unique.default(x,nmax=nmax):unique()仅适用于向量R 尝试创建带有标签的因子变量时收到以下错误消息:错误为unique。默认值(x,nmax=nmax):unique()仅适用于向量,r,dplyr,R,Dplyr,我试图创建一个新的变量,重新编码,把它变成一个带有新标签的因子变量。重新编码的第一部分正常,但当我尝试转换为因子变量时,它会给我以下消息:Error in unique.default(x,nmax=nmax):unique()仅适用于向量 mutate(locale = case_when (V4024 %in% c("R/hme-own dwell", "R/hme-det bldg"
mutate(locale = case_when (V4024 %in% c("R/hme-own dwell",
"R/hme-det bldg","R/home-vac/2nd",
"R/hme-htl/mtl") ~ 1,
V4024 %in% c("N/hme-own yrd", "N/hme apt hall",
"N/hme-on street") ~ 2,
V4024 %in% c("Frn/hme-yard etc","Frn/hme-on str",
"Frn/hme-at hme", "Frn/hme-apt hall"
) ~ 3,
V4024 %in% c("Comm-rest/bar","Other comm bld",
"Gas station", "Office", "Bank",
"Factory/warehouse") ~ 4,
V4024 %in% c("Park-apt etc",
"Park-parking etc") ~ 5,
V4024 %in% c("Schl-school bldg",
"Schl-school prop") ~ 6,
V4024 %in% c("Park-noncomm","Open-on street",
"Open-pub transp",
"Open-apt yd etc") ~ 7,
V4024 %in% c("Other-other") ~ 8))
mutate (locale = as.factor(locale)) %>%
mutate(locale = fct_recode(as.factor(locale),
"Victim's Home" = "1", "Near Victim's Home" = "2",
"At or Near friends/acq" = "3",
"Commercial Place" = "4",
"Parking lot/Garage" = "5",
"School" = "6", "Open Areas/Public Transport" = "7",
"Other" = "8"))
不太清楚为什么会发生错误,但我认为您要实现所需的输出需要走很长的路。当直接时,为什么不在案例中指定相关的fct\u记录输出
library(dplyr)
mutate(locale = factor(case_when (V4024 %in% c("R/hme-own dwell",
"R/hme-det bldg","R/home-vac/2nd",
"R/hme-htl/mtl") ~ "Victim's Home",
V4024 %in% c("N/hme-own yrd", "N/hme apt hall",
"N/hme-on street") ~ "Near Victim's Home",
V4024 %in% c("Frn/hme-yard etc","Frn/hme-on str",
"Frn/hme-at hme", "Frn/hme-apt hall"
) ~ "At or Near friends/acq",
V4024 %in% c("Comm-rest/bar","Other comm bld",
"Gas station", "Office", "Bank",
"Factory/warehouse") ~ "Commercial Place",
V4024 %in% c("Park-apt etc",
"Park-parking etc") ~ "Parking lot/Garage",
V4024 %in% c("Schl-school bldg",
"Schl-school prop") ~ "School",
V4024 %in% c("Park-noncomm","Open-on street",
"Open-pub transp",
"Open-apt yd etc") ~ "Open Areas/Public Transport",
V4024 %in% c("Other-other") ~ "Other")))
谢谢Ronak!我是新来的!如何组合case\u when和fct\u recode?我必须先做as.factor吗?@MariTereMolinet您不需要
fct\u recode
。如果您想将locale
转换为factor
,您可以在case\u之外的情况下进行转换。请参阅更新的答案。