Я новичок в R. Я практиковал функцию lapply() и sapply(): lapply() возвращает список, а sapply() возвращается как вектор/матрица. Теперь я не понимаю, почему lapply() и sapply() имеют тот же результат, что и список?Почему sapply() и lapply() имеют одинаковый результат?
> x1 <- lapply(list(1:3, 25:29), function(x) {2*x})
> x2 <- sapply(list(1:3, 25:29), function(x) {2*x})
> x1
[[1]]
[1] 2 4 6
[[2]]
[1] 50 52 54 56 58
> x2
[[1]]
[1] 2 4 6
[[2]]
[1] 50 52 54 56 58
> str(x2)
List of 2
$ : num [1:3] 2 4 6
$ : num [1:5] 50 52 54 56 58
> mode(x2)
[1] "list"
После этого, я проверил unlist() и возвратил тот же ввод, что и вектор. Трудно понять, почему в результате возвращается тип списка sapply().
спасибо.
[этот ответ] (http://stackoverflow.com/a/7141669/4002530) стоит прочитать. – tospig