使用虹膜数据集。假设我想要创建一个名为&#34的新专栏;#flower;"符合以下条件:
[(Sepal.Length > 5.0) && (Petal.Length < 1.5)]
我该怎么做?
答案 0 :(得分:1)
在base
R:
iris$nice_flower<-(iris$Petal.Length<1.5) & (iris$Sepal.Length>5)
iris[iris$nice_flower==T,] #for verification
答案 1 :(得分:0)
一种方法是使用ifelse
iris$nice_flower <- ifelse(iris$Sepal.Length > 5.0 & iris$Petal.Length < 1.5, 1, 0)
另一种选择是使用as.integer
(我认为akrun曾提到这一点),这比使用ifelse
更好
as.integer(iris$Sepal.Length > 5.0 & iris$Petal.Length < 1.5)
答案 2 :(得分:0)
在函数内使用来创建新列
iris <- within(iris , nice_flower <-ifelse(iris$Sepal.Length > 5.0 & iris$Petal.Length < 1.5, T, F))
iris <- subset(iris, nice_flower %in% T)
答案 3 :(得分:-1)
> iris$nice_flower <- iris$Sepal.Length > 5.0 & iris$Petal.Length < 1.5
> result <- iris[iris$nice_flower == T,]
> result
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species nice_flower
# 1 5.1 3.5 1.4 0.2 setosa TRUE
# 15 5.8 4.0 1.2 0.2 setosa TRUE
# 17 5.4 3.9 1.3 0.4 setosa TRUE
# 18 5.1 3.5 1.4 0.3 setosa TRUE
# 29 5.2 3.4 1.4 0.2 setosa TRUE
# 34 5.5 4.2 1.4 0.2 setosa TRUE
# 37 5.5 3.5 1.3 0.2 setosa TRUE