[ncl-talk] Bootstrapping method for significant test
Anahita Amiri Farahani
aamir003 at ucr.edu
Wed Dec 14 21:13:34 MST 2016
Why this one is wrong to calculate the significance level when there is
only one partial derivative? and if this is wrong how can I calculate that
it is significant or not?
And based on this:
nBoot = 10000
xBoot = *new*
<http://www.ncl.ucar.edu/Document/Functions/Built-in/new.shtml>
(nBoot, typeof(F))
do ns=0,nBoot-1 ; generate multiple estimates
iw = *generate_sample_indices*
<http://www.ncl.ucar.edu/Document/Functions/Contributed/generate_sample_indices.shtml>(N,*1*))
; indices with replacement
xBoot(ns) = (dF(iw)/dN(iw))*(dN(iw)/dA(iw))
end do
How can I say if it is significant?
Thanks,
Ana
On Wed, Dec 14, 2016 at 7:58 PM, Dennis Shea <shea at ucar.edu> wrote:
> [1]
> http://www.ncl.ucar.edu/Applications/bootstrap.shtml
> http://www.ncl.ucar.edu/Document/Functions/Bootstrap/
> bootstrap_regcoef.shtml
> Look at examples
> bootstrap_regcoef_1.ncl
> bootstrap_regcoef_2.ncl
> bootstrap_regcoef_3.ncl
>
> [2]
> You don't need the following but it was wrong. FTR:
>
> do k=0,2999
> ab = regCoef(AI_fall(:,k),Nd_fall(:,k))
> df = ab at nptxy-2
> tval = ab at tval
>
> df = where(df.lt.1,1, df)
> prob = 1 - betainc(df/(df+tval^2), df/2.0, 0.5)
> sig_fall(k) = where(prob.lt.0.95, -999, prob)
> end do
>
> On Wed, Dec 14, 2016 at 7:02 PM, Anahita Amiri Farahani <aamir003 at ucr.edu>
> wrote:
>
>> Thanks a lot, your answer was really helpful and I have another question:
>>
>> Before I use regCoef function in NCL to calculate linear regression.
>> Using this function gives other variables such as rcraw_npt, and
>> rcraw_tval, so I was able to calculate significance at 95%, 90% and 99%
>> confidence level. I've put that part of the code here:
>>
>> do k=0,2999
>>
>> ab = regCoef(AI_fall(:,k),Nd_fall(:,k))
>> rcraw_npt=ab at nptxy-2
>> rcraw_tval=ab at tval
>> b = rcraw_tval
>> b = 0.5
>> rcraw_npt=where(rcraw_npt.lt.1,1,rcraw_npt)
>> rcraw_prob = (1 - betainc(rcraw_npt/(rcraw_npt+rcraw_tval^2),rcraw_npt/2.0,b)
>> )
>> sig_fall(k)=where(rcraw_prob.lt.0.95,-999,rcraw_prob)
>>
>> end do
>>
>>
>> How can I calculate the significance at different confidence level here
>> by using xBoot?
>>
>> Best,
>> Ana
>>
>>
>>
>>
>> On Wed, Dec 14, 2016 at 2:45 PM, Dennis Shea <shea at ucar.edu> wrote:
>>
>>> I think you will have to decide what is best.
>>>
>>> [a]
>>> Constrain the F,N,A triplets to be 'coupled'
>>>
>>> nBoot = 10000
>>> xBoot = *new* <http://www.ncl.ucar.edu/Document/Functions/Built-in/new.shtml> (nBoot, typeof(F))
>>>
>>> do ns=0,nBoot-1 ; generate multiple estimates
>>> iw = *generate_sample_indices* <http://www.ncl.ucar.edu/Document/Functions/Contributed/generate_sample_indices.shtml>(N,*1*)) ; indices with replacement
>>> xBoot(ns) = (dF(iw)/dN(iw))*(dN(iw)/dA(iw))
>>> end do
>>>
>>> [b]
>>>
>>> Unconstrained
>>>
>>>
>>> nBoot = 10000
>>> xBoot = *new* <http://www.ncl.ucar.edu/Document/Functions/Built-in/new.shtml> (nBoot, typeof(F))
>>>
>>> do ns=0,nBoot-1 ; generate multiple estimates
>>> iwF = *generate_sample_indices* <http://www.ncl.ucar.edu/Document/Functions/Contributed/generate_sample_indices.shtml>(N,*1*)) ; indices with replacement
>>> iwN = *generate_sample_indices* <http://www.ncl.ucar.edu/Document/Functions/Contributed/generate_sample_indices.shtml>(N,*1*))
>>> iwA = *generate_sample_indices* <http://www.ncl.ucar.edu/Document/Functions/Contributed/generate_sample_indices.shtml>(N,*1*))
>>>
>>> xBoot(ns) = (dF(iwF)/dN(iwN))*(dN(iwN)/dA(iwA))
>>> end do
>>>
>>> [c]
>>> See where your product fits.
>>>
>>> ia = *dim_pqsort_n* <http://www.ncl.ucar.edu/Document/Functions/Built-in/dim_pqsort_n.shtml>(xBoot, 2, 0) ; sort bootstrap means into ascending order
>>>
>>> n025 = *round* <http://www.ncl.ucar.edu/Document/Functions/Built-in/round.shtml>(0.025*(nBoot-1),3) ; indices for sorted array
>>> n500 = *round* <http://www.ncl.ucar.edu/Document/Functions/Built-in/round.shtml>(0.500*(nBoot-1),3)
>>> n975 = *round* <http://www.ncl.ucar.edu/Document/Functions/Built-in/round.shtml>(0.975*(nBoot-1),3)
>>>
>>> xBoot_025= xBoot(n025) ; 2.5% level
>>> xBoot_500= xBoot(n500) ; 50.0% level (median)
>>> xBoot_975= xBoot(n975) ; 97.5% level
>>>
>>>
>>>
>>> On Wed, Dec 14, 2016 at 3:12 PM, Anahita Amiri Farahani <
>>> aamir003 at ucr.edu> wrote:
>>>
>>>> Dear all,
>>>>
>>>> I have a product of two partial derivatives : dF/dN*dN/dA and for each
>>>> of the variables (F, N, and A) I have data for 720 times. Each partial
>>>> derivatives are calculated by linear regression. I was wondering how I can
>>>> calculate the significant test for this product. All examples in NCL to
>>>> estimate linear regression by this function: *regline_stats
>>>> <http://www.ncl.ucar.edu/Document/Functions/Contributed/regline_stats.shtml> *
>>>> give the regression coefficient for two variables.
>>>>
>>>> Thanks,
>>>> Ana
>>>>
>>>> _______________________________________________
>>>> ncl-talk mailing list
>>>> ncl-talk at ucar.edu
>>>> List instructions, subscriber options, unsubscribe:
>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20161214/b58fa7b4/attachment.html
More information about the ncl-talk
mailing list