Имеется data.frame
Код: Выделить всё
t1 <- sample(100, 10)
t2 <- sample(100, 10)
dt <- rbind(t1, t2)
Например, мне нужно проверить если в колонках с 5 по 8 есть значения больше 20 то исправить их на 20.
Спасибо!
Геоинформационные системы (ГИС) и Дистанционное зондирование Земли
Код: Выделить всё
t1 <- sample(100, 10)
t2 <- sample(100, 10)
dt <- rbind(t1, t2)
Код: Выделить всё
class(dt)
is.matrix(dt)
dt[,5:8]
dt[,5:8] <- apply(X= dt[,5:8],
MARGIN = c(1,2),
FUN = function (z) {
ifelse(z > 20, 20, z)
}
)
dt[,5:8]
dt
Код: Выделить всё
dt <- data.frame(rbind(t1, t2))
Код: Выделить всё
> m=matrix(1:12,ncol=4,nrow=3,byrow=TRUE)
> m
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
> ind<-m[,3:4] > 7
> ind
[,1] [,2]
[1,] FALSE FALSE
[2,] FALSE TRUE
[3,] TRUE TRUE
> m[,3:4][ind] = 7
> m
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 7
[3,] 9 10 7 7
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя
© GIS-Lab и авторы, 2002-2017. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна. Содержание материалов - ответственность авторов (подробнее).