[英]R Use factor() for nominal data - how to value labels for multiple variables
我是R新手,所以這個問題可能很明顯,但是我在附近搜索了很好,找不到任何東西。
我想使用R分析調查,而不是使用常用的Excel方法。
我將變量標記為Q1,Q2,Q3 ...
Q1和Q2包含標稱數據(1、2),我希望將值替換為(“ Yes”,“ No”)。 我可以使用下面的代碼在Q1上做到這一點,但是我不確定是否應該使用c()來使用因子函數。調查將涉及約25個問題,因此我寧願這樣做用一行代碼而不是25行。
resdata$Q1 <- factor(resdata$Q1, levels = c(1,2), labels = c("Yes", "No"))
首先,您需要定義替換函數:
repl.f <- function(x) ifelse(x==1, "Yes","No")
然后只需在dplyr的mutate_each()中使用此參數即可:
library(dplyr)
resdata <- resdata %>% mutate_each(funs(repl.f),contains("Q"))
它的第一個參數是要在funs()內部應用的函數,第二個參數是列的子集。 如果只給它一個功能,則默認情況下它將替換這些列。 要選擇列,您可以使用另一個dplyr函數:contains(),就像dplyr中的其他所有內容一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.