В Wed, 21 Jun 2023 03:13:52 +1000 Philip Rhoades via R-help <r-help@r-project.org> пишет:
> This: > > !(1,2,3,4,5) > > would give this: > > (2,3,4,5, 6,8,10, 12,15, 20) Do you mean taking a product of every element of the vector with all following vector elements? A relatively straightforward way would be (given your vector stored in `x`): unlist(lapply(seq_along(x), function(i) x[i] * x[-(1:i)])) (I'm sure it could be golfed further.) > and this: > > !(1,2,NA,4,5) > > would give this: > > (2,4,5, 8,10, 20) The previous solution seems to give your vector interspersed a bunch of NAs, so one way to continue would be to filter it using v[!is.na(v)]. -- Best regards, Ivan ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.