只有當資料與以前存盤的資料不同時,我才想將資料附加到我的串列中。
data <- c("A","B","C")
到目前為止我的代碼:
x<- function(...){
data <- ifelse(... %in% data, append(data, ""),append(data, as.character(...)))
return(data)
}
例如,如果我想附加“D”,我想要的輸出是:
data
[1] "A" "B" "C" "D"
但是,我收到了這個:
data
[1] "A"
uj5u.com熱心網友回復:
x <- c("A","B","C")
y <- c("D", "A")
union(x, y)
# [1] "A" "B" "C" "D"
uj5u.com熱心網友回復:
ifelse函式因此無法給出向量。請參閱ifelse 函式檔案。
相反,您應該使用if - else陳述句
x<- function(...){
data <- if (... %in% data) {append(data, "")} else {append(data, as.character(...))}
return(data)
}
x("D")
[1] "A" "B" "C" "D"
uj5u.com熱心網友回復:
這是我的解決方案:
x <- c("A","B","C")
y <- c("D", "A")
unique(c(x, y))
[1] "A" "B" "C" "D"
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/371347.html
下一篇:在R中只保留每組的第二個觀察值
