2013-06-26 4 views
2

R의 선형 모델 계산 결과를 Excel의 워크 시트로 전달하고 싶습니다. 이 일을 위해 나는 다음과 같은 코드로 XLConnect 사용하고 있습니다 : (: X 여기)가 제대로 인쇄되어 있지만 그러나 R : XLConnect가 변수 이름을 전달하지 않습니다.

x <- 1000:2000 
y <- 3*x+rnorm(length(x)) 
fit <- lm(y~x-1) 
result <- summary(fit)$coeff 

print(result) 

require(XLConnect) 
wb <- loadWorkbook("/Users/andreas/test1.xls", create = TRUE) 
createSheet(wb, name = "test") 
writeWorksheet(wb, result, sheet = "test", startRow = 1, startCol = 1) 
saveWorkbook(wb) 

이 문제가 XLConnect가 Excel로 coeffiecient (들)의 이름을 전달하지 않는다는 것입니다 .

누구든지 그 문제에 대해 아이디어가 있습니까?

대단히 감사하겠습니다.

앤디

답변

0

당신은 값 별도로 계수 테이블의 이름을 전달할 수 :

writeWorksheet(wb, colnames(result), sheet="test", startRow=1, startCol=2) 
writeWorksheet(wb, rownames(result), sheet="test", startRow=2, startCol=1) 
writeWorksheet(wb, result, sheet="test", startRow=2, startCol=2) 
+0

안녕 홍콩 오오이이, 당신의 도움을 주셔서 대단히 감사합니다. 안타깝게도 솔루션이 작동하지 않습니다. 이름 (결과)을 작성하면 NULL을 리턴합니다. – Andy

+0

아, 나는 당신이 '요약'에서 계수 표를 얻는 것을 보지 못했습니다. 나는 당신이'coef (fit)'을하고 있다고 가정했다. –

+0

고마워, 그 위대한 작품. 비록 나중에 사용하지 않는다면 왜 nr과 nc를 만드는지 이해할 수 없지만. – Andy

4

이 경우의 변수 이름 한번 result는 데이터 프레임으로 변환하는 rowname로 끝난다. writeWorksheetrownames라는 주장이있다 :

wb <- loadWorkbook("~/Desktop/test1.xls", create = TRUE) 
createSheet(wb, name = "test") 
writeWorksheet(wb, result, sheet = "test", startRow = 1, startCol = 1,rownames = "var") 
saveWorkbook(wb) 
관련 문제