On Jul 27, 2012, at 3:10 AM, Krunal Nanavati wrote:

Hi David,

Thanks for the reply.

With your first alternative, I am getting the beta values in different
cells in the excel file.

Is there a way to get all the information generated by the summary
function in different cells in a excel file, through the write function?

The summary function returns a complex list object. You can see that list structure with this code:

#Using the example in help(lm)
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2,10,20, labels=c("Ctl","Trt"))
weight <- c(ctl, trt)
lm.D90 <- lm(weight ~ group - 1) # omitting intercept

str(summary(lm.D90))

What you see at the console whaen you type summary(lm.D90) is somewhat different. It is the result of another function, print.summary(). It is not a visible function so when you type its name you get:

> print.summary.lm
Error: object 'print.summary.lm' not found

But it has to be there and I took an educated guess that it was in the stats package and can see it by using the triple-colon infix function:

stats:::print.summary.lm

You could wrap 'as.character' around the summary object:

as.character( summary(lm.D90))

I'm guessing you do not really want all of that complexity and would probably be better served by learning the proper extractor functions for regression or summary.lm arguments linked from the help(lm) page in the "See Also" section;

?lm
?coef
?vcov
?fitted
?residuals
?terms

Notice that the extractor functions will return different objects from the model object than they do from the summary object:

> coef( lm.D90)
groupCtl groupTrt
   5.032    4.661

> coef( summary(lm.D90) )
         Estimate Std. Error  t value     Pr(>|t|)
groupCtl    5.032  0.2202177 22.85012 9.547128e-15
groupTrt    4.661  0.2202177 21.16542 3.615345e-14


Also, can you please elaborate on your third option. I went into the data
tab in excel, and chose from text option, as I had pasted the console
output of regression in a text file. But by doing this I am getting all
the output in a single cell in excel.

As an example, copy the output of the three lines following the console call to "coef( summary(lm.D90) )" into an Excel spreadsheet. If the copied three cells should remain highlighted. Now click the Data menu and pick the "Text to Columns... " item and accept the defaults in the which should be "fixed" in the fist dialog, and the correct locations for the cell splits in the next ones. You should now get the results split into cells. Sometimes you need to adjust the guesses that the program makes for where you want splits to occur, but the little fixed-import dialog is fairly handy, so you should learn it. But ... further such questions are off-topic for this list, and you should be getting you instructions on an Excel forum.

Also read:

http://rwiki.sciviews.org/doku.php?id=tips:data-io:ms_windows

(Note: I'm not a regular user of R or Excel on Windows, but I believe the actions on the Excel for Mac 2011 should very similar to the behavior I dimly remember in the Windows version. I'm also old enough to remember the several years when Excel only existed on the Mac, but in those years I was using GLIM.)

--
David


Thanks for your time.

Thanks & Regards,

Krunal Nanavati
9769-919198


-----Original Message-----
From: David Winsemius [mailto:dwinsem...@comcast.net]
Sent: 27 July 2012 14:41
To: Krunal Nanavati
Cc: Jeff Newmiller; Jean V Adams; r-help@r-project.org
Subject: Re: [R] Working with Numbers generated from Regression Output


On Jul 27, 2012, at 12:14 AM, Krunal Nanavati wrote:

Hi Jeff,

Sorry for the previous email.

I tried using write function, and used the following syntax

write(result,file="C:\\Users\\Krunal\\Desktop\\Book1.csv")

but it is giving the following error

Error in cat(list(...), file, sep, fill, labels, append) :
argument 1 (type 'list') cannot be handled by 'cat'

Can you tell me where I am going wrong

(First off, we have no wat y=to know what result is. I'm guessing its an
lm-object.

If that's correct, then you could try:

  write.csv( coef(result), file="C:\\Users\\Krunal\\Desktop\
\Book1.csv")

It is designed to write dataframes, but a simple list or vector of
coefficients sould get written (after coercion).

I think you can also do this (in Windows)

write.csv( coef(result), file="clipboard") # and then paste into Excel

Excel doesn't really have a corresponding data structure to a named
vector, so you won't get the names if you go the second route.

And finally, Excel has a /Data/Text to Columns facility that is useful for turning console output into columnar data. Choose the fixed format menu.

--
David.





Thanks & Regards,

Krunal Nanavati
9769-919198

-----Original Message-----
From: Jeff Newmiller [mailto:jdnew...@dcn.davis.ca.us]
Sent: 27 July 2012 12:11
To: Krunal Nanavati; Jean V Adams
Cc: r-help@r-project.org
Subject: Re: [R] Working with Numbers generated from Regression Output

Stop posting HTML. What you see is NOT what we see.

As regards to your problems... you need to learn how to get data
into and
out of R, so please read the R Input/Output document supplied with
R. The
most foolproof way is to write the data to a CSV file and read it
from there
into a spreadsheet. Depending on your operating system you may be
able to
write into a clipboard for more convenience.

As to your goal of making predictions, with only a few more steps
you can
make those predictions using R. See the examples in the help for
predict (
type "?predict.lm" without the quotes).

--------------------------------------------------------------------------
-
Jeff Newmiller                        The     .....       .....  Go
Live...
DCN:<jdnew...@dcn.davis.ca.us>        Basics: ##.#.       ##.#.
Live Go...
                                    Live:   OO#.. Dead: OO#..
Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.
rocks...1k

--------------------------------------------------------------------------
-
Sent from my phone. Please excuse my brevity.

Krunal Nanavati <krunal.nanav...@cogitaas.com> wrote:

Hi Jean,



Thank you very much for getting back to me.



I tried the solutions that you have provided.



First I tried the coef(result) statement .and I got the below output



coef(result)

(Intercept)            X       Volume

-30.40275264   0.57786290   0.02594024



Then, I simply selected this output from the R window, and pasted it
into an Excel Sheet, and it go pasted in the below manner.





















(Intercept)            X       Volume















-30.40275264   0.57786290   0.02594024































































So, here all the output is getting pasted in a single cell. What I am
looking for is something different.



Here is what I am looking for















(Intercept)

X

Volume





-30.40275264

0.57786292

0.02594024



































So, once the beta values are placed in different cells, I can work on
those numbers individually to calculate elasticities.



I tried with the other statements as well, but they are not
addressing
this issue.



Can you please help me out with this. I really appreciate your time
and
effort.









Thanks & Regards,



Krunal Nanavati

9769-919198



*From:* Jean V Adams [mailto:jvad...@usgs.gov]
*Sent:* 26 July 2012 20:53
*To:* Krunal Nanavati
*Cc:* r-help@r-project.org
*Subject:* Re: [R] Working with Numbers generated from Regression
Output



You can learn a lot from the help files.  Check out the help files
for
the
lm() and summary.lm() functions

?lm
?summary.lm

You can extract the beta values in a few different ways.
These two will give you just the estimates in a vector:

coef(result)
result$coef

These two will give you the estimates and more in a matrix:

coef(summary(result))
summary(result)$coef

Jean


Krunal Nanavati <krunal.nanav...@cogitaas.com> wrote on 07/26/2012
07:28:02
AM:

Hi,

I have a query on regression output generated by R.

result=lm( Y~X , data=trail)
summary(result)

After running this 2 statements the following output is generated.

Call:
lm(formula = Y ~ X, data = trail)

Residuals:
  Min      1Q  Median      3Q     Max
-245.30  -90.77  -30.30   54.99  532.78

Coefficients:
          Estimate Std. Error t value Pr(>|t|)
(Intercept) 245.2982    62.1307   3.948 0.000376 ***
X             0.5192     0.1752   2.963 0.005533 **
---
Signif. codes:  0  ***  0.001  **  0.01  *  0.05  .  0.1     1

Residual standard error: 169.1 on 34 degrees of freedom
Multiple R-squared: 0.2052,     Adjusted R-squared: 0.1818
F-statistic: 8.777 on 1 and 34 DF,  p-value: 0.005533

From this output, I intend to use the beta values to calculate
elasticities. Is this possible directly in R?

If not, then when I paste this output in Excel, It is pasted as an
image,
and thus I cannot use the beta values for calculating any other
metric.

Can anyone please help me out!!!

Thanks & Regards,

Krunal Nanavati
9769-919198

        [[alternative HTML version deleted]]

______________________________________________
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-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.

David Winsemius, MD
Alameda, CA, USA

David Winsemius, MD
Alameda, CA, USA

______________________________________________
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.

Reply via email to