簡體   English   中英

R:ifelse 語句為另一列賦值

[英]R: ifelse statement to assign a value to another column

基於三個條件,我想分配值 1。如果我只使用一個& (例如,省略 2018),則以下代碼有效。

df[df$2017 == 1 & 
   df$2018 == 0 &
   df$x == -1, ]$y <- 1

我相信 ifelse 語句是我需要的,但我不明白如何將值1分配給語句中的y列。

非常感謝幫助

最好用邏輯向量對“y”進行子集化,而不是對整個數據集進行子集化然后提取列

df$y[with(df, `2017` == 1 & 
                  `2018` == 0 &
                    x == -1)] <- 1

如果我們需要使用多個值,請將==更改為%in%

df$y[with(df, `2017` == 1 & 
                  `2018` == 0 &
                    x == -1 &
                  `2019` %in% c(0, 1))] <- 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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