Re: [R] Latin Hypercube with condition sum = 1

From: Rainer M Krug <r.m.krug_at_gmail.com>
Date: Mon, 24 Nov 2008 10:31:53 +0200

On Sun, Nov 23, 2008 at 8:06 PM, Ben Bolker <bolker_at_ufl.edu> wrote:
> In that case won't
>
> x2 <- (x-min(x))/(max(x)-min(x)) ## establishes criterion 1

That one is not needed, as the range is automatically between 0 and 1: min(ws)
[1] 6.925322e-05
> max(ws)

[1] 0.9999284
so that is fine.
but when I do the normalization, i.e. the sum of each row has to be 1:

wss <- ws / rowSums(ws)

the min and max change to:
> min(wss)

[1] 0.0003943225
> max(wss)

[1] 0.4834845

But there is also the possibility, that one value ws[n,1] is larger then one (or one), and the others are zero (or sum(ws[n,-1] == 1-ws[n,1]), e.g. (1,0,0,0,0,0,0).

In addition, I think that the resulting cube is not a Latin Hypercube any more.

> x3 <- x2/sum(x2) ## establishes criterion 2
>
> work? I haven't thought about this very carefully, but
> since transformation makes min(x)=0 and max(x)=1 (and therefore
> sum(x)>1 -- although it won't work if length(x)<2 or var(x)==0)
> transformation 2 will necessarily reduce the range and therefore
> not violate criterion 1 ... ?
>
> Ben Bolker
>
>
> Rainer M Krug wrote:
>> On Sun, Nov 23, 2008 at 7:43 PM, Ben Bolker <bolker_at_ufl.edu> wrote:
>>> Rainer M Krug <r.m.krug <at> gmail.com> writes:
>>>
>>>> Hi
>>>>
>>>> I want to du a sensitivity analysis using Latin Hypercubes. But my
>>>> parameters have to fulfill two conditions:
>>>>
>>>> 1) ranging from 0 to 1
>>>> 2) have to sum up to 1
>>>>
>>> Perhaps I'm missing something, but it seems that there's
>>> only one vector that satisfies these two conditions simultaneously,
>>> which is x={0,1} ... ??? (Actually, technically speaking
>>> you could have as many zeros as you wanted -- x = {0,0,0,1}
>>> would also work -- but I don't think that's going to help much.)
>>> If min(x)=0 and max(x)=1, then x must contain 0 and 1. If x
>>> contains any other non-zero values, and no negative
>>> ones, then sum(x)>1 ...
>>
>> You are absolutely right - but when you look at the example, I want
>> that the FINAL latin hypercube sets sum up to one, and the values
>> RANGING from 0 to 1, i.e. (0.5, 0.5) would also satisfy the condition.
>>
>>> You seem to have a problem either in your definitions,
>>> or in your communication of those definitions to us ...
>>
>> Probably both - but to try again:
>>
>> 1) values ranging between 0 and 1 (0 <= x <= 1)
>> 2) all elements in one set of the lLatin Hypercube should add to one.
>>
>> Assuming two dimensions, (1,0) & (0,1) & (0.3, 0.7) , ... would all
>> satisfy the condition 1 and 2;
>>
>> (0.8, 0.3) would satisfy 1, but not 2;
>> (-1, 2) would satisfy 2, but not 1
>>
>> Hope this clarifies my question,
>>
>> Rainer
>>
>>> cheers
>>> Ben Bolker
>>>
>>> ______________________________________________
>>> 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.
>>>
>>
>>
>>
>
>
> --
> Ben Bolker
> Associate professor, Biology Dep't, Univ. of Florida
> bolker_at_ufl.edu / www.zoology.ufl.edu/bolker
> GPG key: www.zoology.ufl.edu/bolker/benbolker-publickey.asc
>

-- 
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
Biology, UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Faculty of Science
Natural Sciences Building
Private Bag X1
University of Stellenbosch
Matieland 7602
South Africa

______________________________________________
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 Mon 24 Nov 2008 - 08:34:14 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 Mon 24 Nov 2008 - 09:30:27 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