[R] Additional field data collection

David Winsemius dwinsemius at comcast.net
Wed Feb 3 23:53:42 CET 2010


On Feb 3, 2010, at 5:44 PM, stephen sefick wrote:

> 39 for right now
>
> Which, now that I look at it, doesn't seem like that many stations.  I
> guess I am looking for a general solution because I will also have to
> do a similar thing for another analysis... so 36 more... grand total
> 72.

So manageable for doing some mammalian guidance to the software?

==
David.

>
> Stephen
>
> On Wed, Feb 3, 2010 at 4:14 PM, David Winsemius <dwinsemius at comcast.net 
> > wrote:
>>
>> On Feb 3, 2010, at 3:36 PM, stephen sefick wrote:
>>
>>> This is a subset of a much larger dataframe.  I would like to be  
>>> able
>>> to automate finding the pair of x, y coordinates where the line
>>> crosses zero agian
>>>
>>> x <- (structure(list(bankfull_depths_m = c(0, 0.17, 0.38, 0.37,  
>>> 0.36,
>>> 0.39, 0.47, 0.48, 0.19, 0.05, -0.05, -0.09), measurment_num_m =  
>>> c(0.2,
>>> 0.4, 0.6, 0.8, 1, 1.2, 1.4, 1.6, 1.8, 2, 2.2, 2.4)), .Names =
>>> c("bankfull_depths_m",
>>> "measurment_num_m"), class = "data.frame", row.names = 97:108))
>>>
>>> qplot(measurment_num_m, bankfull_depths_m, data=x)
>>>
>>> in this case it is 2.1, 0
>>
>> I cannot quite get there with a naive application of approxfun using
>> "reversed arguments", since the inverse function that would be  
>> created is
>> not a legitimate function. I can do it in segments, though:
>>
>>> y.x <- approxfun(x=x$bankfull_depths_m[9:12], y=x 
>>> $measurment_num_m[9:12])
>>> y.x(0)
>> [1] 2.1  # so you can do it piecewise in regions where the x-y  
>> function is
>> monotonic
>>
>>> y.x <- approxfun(x=x$bankfull_depths_m, y=x$measurment_num_m)
>>> y.x(0)
>> [1] 0.2  # an almost trivial result at the LHS of the range.
>>
>> You could also try to do a Newtonian walk (at least that is my  
>> guess for the
>> underlayment of uniroot() )  along the result of the the unreversed
>> arguments.
>>
>>> x.y <- approxfun(y=x$bankfull_depths_m, x=x$measurment_num_m)
>>> uniroot(x.y, range(x$measurment_num_m) )
>> $root
>> [1] 0.2
>>
>> $f.root
>> [1] 0
>>
>> $iter
>> [1] 0
>>
>> $estim.prec
>> [1] 0
>>
>> # That was the first root and this is the second.
>>
>>> uniroot(x.y, c(1, 2.3) )
>> $root
>> [1] 2.1
>>
>> $f.root
>> [1] 0
>>
>> $iter
>> [1] 3
>>
>> $estim.prec
>> [1] 0.01162791
>>
>> So you still need to apply some guidance to the functions.
>>
>> --
>> david
>>
>>
>>>
>>> I need a way to process a whole bunch of data points, and I am at a
>>> loss.  Thanks for any help.
>>> regards,
>>
>> Whole bunch??? Can you be any more vague, please?
>> --
>>
>> David Winsemius, MD
>> Heritage Laboratories
>> West Hartford, CT
>>
>> ______________________________________________
>> 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.
>>
>
>
>
> -- 
> Stephen Sefick
>
> Let's not spend our time and resources thinking about things that are
> so little or so large that all they really do for us is puff us up and
> make us feel like gods.  We are mammals, and have not exhausted the
> annoying little problems of being mammals.
>
> 								-K. Mullis

David Winsemius, MD
Heritage Laboratories
West Hartford, CT



More information about the R-help mailing list