Re: [R] random value changes in a vector

From: David Winsemius <dwinsemius_at_comcast.net>
Date: Wed, 19 Nov 2008 11:41:12 -0500

Using rbinom might be more clear than my sample() solution. May I speculate without actual testing that:

inv <- 2*rbinom(length(vec),1,0.5) - 1

might be more efficient than a 2-step rbinom / ifelse strategy?

-- 
David Winsemius
Heritage Labs

On Nov 18, 2008, at 5:21 PM, joris meys wrote:


> The function rbinom might be a solution.
>
> Try following simple program :
> vec <- c(-1,1,-1,1,1,-1,-1,1,1)
>
> inv <-rbinom(length(vec),1,0.5)
> inv <-ifelse(inv==0,-1,1)
>
> vec2 <- vec*inv #switches sign with p=0.5
>
> In this, inv is a random binomial vector, where the probability for
> being 1 is 0.5 in all positions. Changing the values of 0 in this
> vector to -1, gives you a vector you can multiply with the original
> one to change the sign with a probability of 0.5 for all positions
>
> Kind regards
> Joris
> On Tue, Nov 18, 2008 at 6:11 PM, Salas, Andria Kay
> <aks2515_at_uncw.edu> wrote:
>> To clear up a question regarding my earlier posting regarding
>> random changes in a vector:
>>
>> Say you have a vector (1, -1, -1, 1, 1, -1). I want each value in
>> the vector to have a probability that it will change signs when
>> this vector is regenerated. For example, probability = 50%. When
>> the vector is regenerated, the first value in the vector (1) has a
>> 50% chance of switching to -1. If I regenerated this vector 10
>> times, 5 of the times it would switch to -1. Similarly, I need
>> each value in the vector to have this same probability of switching
>> signs when the vector is regenerated, and each value's chances of
>> doing so is independent of the other values. So the second value
>> (-1) also has a 50% chance of switching to 1, and whether or not it
>> does so is independent of if the first value changes from 1 to -1
>> (also a 50% probability).
>>
>> I hope this clears up the confusion, and I would appreciate any
>> help anyone can provide!
>> ______________________________________________
>> R-help_at_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.
>>
>
> ______________________________________________
> R-help_at_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.
______________________________________________ R-help_at_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.
Received on Wed 19 Nov 2008 - 16:43:42 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 19 Nov 2008 - 17:30:28 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive