Thanks all, that worked!

Yes, it should be
for (i in 1:length(a)) a[i]<- scalar * a[i] * i

And now is...

a <- a * scalar * seq_along(a)

That is almost as cool as the PERL programming language :-)

2012/6/4 Rui Barradas <ruipbarradas@sapo.pt>

> Hello,
>
> Just learning the alphabet? If yes, there's a difference between 'v' and
> 'a'.
>
> Now more seriously. Your description and your loop don't do the same.
>
> Description:
> vm <- scalar * v * seq_along(v)
>
> Loop:
> a <- scalar * a
>
> Also, seq_along is the way to do it, it works even if length(a) == 0.
>
> Hope this helps,
>
> Rui Barradas
>
> Em 04-06-2012 21:25, Erdal Karaca escreveu:
>
>> (Just learning R)
>>
>> I have this vector:
>>
>> v<- c(1:10)
>>
>> Now, I want to multiply each element of that vector with a scalar value
>> multiplied with its index:
>>
>> vm<- v * scalar * indexOfCurrentElementOf_v
>>
>> Is that possible without using a loop?
>>
>> In a loop I would do this:
>>
>> for (i in 1:length(a)) a[i]<- scalar * a[i]
>>
>>        [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help@r-project.org mailing list
>> 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.
>>
>

	[[alternative HTML version deleted]]

