Как заставить работать сумму (1: "by_element_of_vector_y") - PullRequest
2 голосов
/ 09 апреля 2019

Моя проблема связана с тем, что что-то вроде этого не работает:

x<-c(1,2,3,4)
myfn <- function(z){sum(1:z)}
myfn(x)

Я бы хотел, чтобы функция взяла вектор в качестве входных данных и делала: (сумма (1: 1), сумма (1: 2), сумма (1: 4), сумма (1: 4)), если, например, , он принимает х в качестве входа.

Таким образом, результат будет (1,3,6,10).

Однако я получаю:

Warning message:
In 1:z : numerical expression has 4 elements: only the first used

1 Ответ

1 голос
/ 09 апреля 2019

Используйте Vectorize, чтобы применить пользовательскую функцию к вектору length больше 1

Vectorize(myfn)(x)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...