[R] extract printed value from a function
Peter Ehlers
ehlers at ucalgary.ca
Thu Feb 24 13:22:34 CET 2011
On 2011-02-24 03:26, Duarte Viana wrote:
> Hello all,
>
> This shouldn't be difficult, but I am not able to extract a printed
> value from a function and assign it to an object.
>
> In my case,
>
>> library(DAAG)
>> twotPermutation(c(2,3,4),c(3,6,5),plotit=F)
> [1] 0.298
>
> I would like to assign this result to an object.
Two suggestions:
1.
Modify the code for twotPermutation by removing the invisible()
at the end.
2.
Use capture.output to capture the result and then convert
to numeric:
pvstring <- capture.output(
twotPermutation( c(2,3,4), c(3,6,5), plotit=FALSE) ))
Now you can use strsplit or substr to extract the numeric part:
pv <- as.numeric(strsplit(pvstring, " ")[[1]][2])
or
pv <- as.numeric(
substr(pvstring, nchar(pvstring) - 5, nchar(pvstring)))
Peter Ehlers
>
> Thanks,
>
> Duarte
>
> ______________________________________________
> 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.
More information about the R-help
mailing list