簡體   English   中英

R將factor()用於名義數據-如何對多個變量的標簽賦值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM