我一直在使用ifelse
将矢量分配给数据帧的列,如下所示:
data[, ncol(data) + 1] <- ifelse(is.price, p, y)
(其中p
和y
是向量)
不幸的是,我意识到该表达式将ifelse
的返回值的第一个元素向量化,因此我得到了一个与nrow(data)
相同的元素的列。这是R的缺陷吗?我应该使用更明确的赋值吗?
答案 0 :(得分:0)
尝试:
library(dplyr)
data<- data %>%mutate( new_col= if_else(is.price, p, y))