Re: [R] Formatting numerical output

2010-04-25 Thread Berend Hasselman


MARCEL CURLIN wrote:
 
 .
 
 Currently my output looks like:
 [1] Excluded range: Time 00.2 
 [4] R^2 =0.111526872884505   
 [1] Excluded range: Time 0.2  0.4 
 [4] R^2 =0.0706332920267015  
 [1] Excluded range: Time 0.4  0.6 
 [4] R^2 =0.0691466100802879
 
 I would like the output format to look like:
 Excluded range: Time 1.0 - 1.2tabR^2 = 0.45  
 Excluded range: Time 1.2 - 1.4tabR^2 = 0.5
 etc.
 
 I would like to 
 1. get time and R^2 data on the same line
 2. control (reduce) the number of digits reported for R^2
 3. reduce the large number of empty spaces between R^2' and value.
 

?sprintf

For example

cat(sprintf(Excluded range: Time %.2f %.2f R^2 =
%.4f\n,lowend,highend,rsquare))

Berend

-- 
View this message in context: 
http://r.789695.n4.nabble.com/Formatting-numerical-output-tp2063882p2064114.html
Sent from the R help mailing list archive at Nabble.com.

__
R-help@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] Formatting numerical output

2010-04-24 Thread MARCEL CURLIN
Hello,
I am new to R and am having difficulty formatting numerical output from a 
regression analysis. My code iteratively performs linear regression on a 
dataset while excluding certain data ranges. 

My code:
rm(list = ls(all = TRUE))
sink(outfile)
dat - read.table(testdat, sep=\t, header=TRUE)
int = 0.2

for (x in c(0:20)) { 
subdat - subset(dat, time = int * x | time  (int*x) + int)   
#excludes range of time data between int * x and (int*x) + int
lm.subdat - lm(length~time, subdat)
#regression
rs.subdat - summary(lm.subdat)$r.squared   
#getting R-squared information
txt1 - (Excluded range: Time)
#creating components of output message
txt2 - (R^2 =)   
#creating components of output message
lowend - (int*x)
highend - (int*x + int)
output - c(txt1, lowend, highend, txt2, rs.subdat)
print.noquote(output, sep=\t)
}
sink()

Currently my output looks like:
[1] Excluded range: Time 00.2 
[4] R^2 =0.111526872884505   
[1] Excluded range: Time 0.2  0.4 
[4] R^2 =0.0706332920267015  
[1] Excluded range: Time 0.4  0.6 
[4] R^2 =0.0691466100802879

I would like the output format to look like:
Excluded range: Time 1.0 - 1.2tabR^2 = 0.45  
Excluded range: Time 1.2 - 1.4tabR^2 = 0.5
etc.

I would like to 
1. get time and R^2 data on the same line
2. control (reduce) the number of digits reported for R^2
3. reduce the large number of empty spaces between R^2' and value.

I searched a lot but could not find much on this. Any help on these specifics 
or general comments on formatting numerical output greatly appreciated. 

thanks,

Marcel

__
R-help@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.