Я хотел бы ответить на мой вопрос в два этапа, чтобы лучше понять способ кодирования.
Часть 1:
Предположим, у меня естьсписок вроде этого:
x <- data.frame(replicate(5,sample(0:100,10,rep=TRUE)))
y <- data.frame(replicate(5,sample(0:100,10,rep=TRUE)))
z <- list(x, y)
Я хотел бы получить диапазон чисел каждого столбца каждого списка.Я не совсем понял, как я могу объединить lapply с sapply, чтобы получить результаты для каждого столбца данных в моем списке.Любые идеи о том, как я мог бы сделать это?
Все, что я мог бы сделать для правильной работы, - это если бы я хотел получить диапазон, скажем, третьего столбца первого элемента списка:
range(z[[1]][[2]])
Часть 2:
Вторая часть моего вопроса идет немного дальше.На этот раз я добавлю столбец с символами к моим фреймам данных.
a <- data.frame(replicate(5,sample(0:100,10,rep=TRUE)))
a$x6 <- letters[1:10]
b <- data.frame(replicate(5,sample(0:100,10,rep=TRUE)))
b$x6 <- letters[1:10]
c <- list(x, y)
Я хотел бы получить диапазон чисел каждого столбца каждого списка за исключением столбца 6, который не является числовым.Я не хочу удалять этот столбец, а скорее запросить только числовые столбцы.
Есть идеи, как мне это сделать эффективно?Я полагаю, что комбинация lapply и sapply была бы лучшей.
Если у вас есть идея, как сделать это с помощью вложенного цикла, это также было бы интересно узнать.Может быть, вторая часть также работает только с вложенным циклом ...