我準備創建一個多級分析(我是一個新手)。
在這個分析中,我想測驗一個預測變數的高值(這里:senseofhumor)(數值 - 轉換為“高”、“低”、“中”)是否比另一個(數值)更能預測(數值)結果) 預測變數 (senseofhomor-seriousness-friednlyness)。我有一個包含許多人和組的資料集,并想比較組之間關于SenseofhumorHIGH影響的結果
代碼可能看起來像這樣
RandomslopeEC <- lme(criteria(timepoint1) ~ senseofhumor seriousness friendlyness , data = DATA, random = ~ **SenseofhumorHIGH**|group)
出于這個原因,我通過為我的數字預測器創建了值“高”“低”“中”
library(tidyverse)
DATA <- DATA %>%
mutate(predictorNew = case_when(senseofhumor< quantile(senseofhumor, 0.5) ~ 'low',
senseofhumor > quantile(senseofhumor, 0.75)~'high',
TRUE ~ 'med'))
現在它們看起來像這樣:
| 人 | 團體 | 幽默感 |
|---|---|---|
| 1 | 56 | 低的 |
| 7 | 1 | 高的 |
| 87 | 7 | 低的 |
| 764 | 45 | 高的 |
現在我意識到如果我想測驗我的想法,我可能需要將這個變數值切割成單獨的變數。
你們中有人知道如何生成變數,它們可能看起來像這樣嗎?
| 人 | 團體 | 幽默感高 | 幽默感 | 幽默感LOW |
|---|---|---|---|---|
| 1 | 56 | 0 | 0 | 1 |
| 7 | 1 | 1 | 0 | 0 |
| 87 | 7 | 0 | 0 | 1 |
| 764 | 45 | 1 | 0 | 0 |
| 51 | 3 | 1 | 0 | 0 |
| 362 | 9 | 1 | 0 | 0 |
| 87 | 27 | 0 | 0 | 1 |
對于我的方法,這對您有意義嗎?還是你有更好的主意?
非常感謝提前
uj5u.com熱心網友回復:
歡迎學習 R。您需要將這些型別的變數轉換為“因子”,R 將能夠相應地處理它們。為此,請使用as.factor(variable)- 所以對你來說可能是DATA$senseofhumor <- as.factor(DATA$senseofhumor). 如果需要轉換多列,可以使用:
factor_cols <- c("Var1","Var2","Var3") # list columns you want as factors
DATA[factor_cols] <- lapply(DATA[factor_cols], as.factor)
由于您是新手,請注意,此論壇通常是針對無法在網上輕松找到的問題。這個問題比較常規,可以通過快速谷歌搜索找到更多詳細資訊。雖然 SO 是學習 R 的好地方,但您將來可能會因此類常規問題而受到 SO 社區的懲罰。只是想幫助確保您繼續學習!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/405244.html
標籤:
下一篇:始終讀取一個If-Else陳述句
