2013-06-04 6 views
3

간단한 질문으로, pmmlcode <- pmml(my.object)을 사용하여 R 객체의 PMML 코드를 저장했으며 텍스트 파일에 직접 저장하는 것이 좋습니다. 데이터가 테이블이 아니기 때문에 일반적인 write.table 메서드가 작동하지 않습니다.PMML을 텍스트 파일로 내보내시겠습니까?

답변

2

XML 패키지에서 toString.XMLNode을 시도한 다음 writeLines으로 파일에 쓰십시오. 보다 완전한 대답을 위해 예제 데이터를 제공해야합니다.

+0

Perfect! 고맙습니다. – Jon

1

UCLA CRAN 미러에서 pmml 패키지를 사용할 수 있는지에 대한 이전 문제를 해결 한 후에 테스트 코드가 없으면 만들 수 있습니다. 이것은 내 PMML 인식 응용 프로그램 해석 할 수있을 것입니다 형식은 아니지만 인간의 가독성을 허용 출력을 생성합니다

cat(paste(unlist(pmmlcode),"\n"), file="yourfile.txt") 

중 어느 것도 이러한 일 :

그냥 문자 벡터의 경우 :

cat(pmmlcode, file="yourfile.txt") 

아니면 목록의 경우 :

lapply(pmmlcode, cat, file="yourfile.txt", append=TRUE) 
9

당신은 단순히 저장을 사용할 수 있습니다 아래의 예와 같이 XML : 난 그냥 .pmml 파일로 PMML 출력을 넣어 더미 PMML 파일을 생성하고 명령을 가라 홍채 데이터를 사용하고

library(randomForest) 

library(pmml) 

data(airquality) 

ozone.out <- randomForest(Ozone ~ Wind+Temp+Month, data=na.omit(airquality), ntree=200) 

saveXML(pmml(ozone.out, data=airquality), "airquality_rf.pmml") 
2

,

R > library(pmml) 
    R > lml <- lm(iris$Sepal.Length~iris$Sepal.Width) 
    R > sink("myPmml.pmml") 
    R > cat("<?xml version=\"1.0\"?>\n") 
    R > pmml(lml) 
    R > sink() 

출력 myPmml.pmml은 setwd가 .Rprofile에 설정되어있는 곳이면 어디에나 저장해야하며, 기본값은 Windows의 "Mydocuments"입니다. Offcourse이 당신이 싱크() 명령에 .pmml 대신 .txt 인 넣을 경우에도 작동합니다, 뭔가 같은 :

sink("mypmml.txt") 

편집 : J.Dimeo에 정상에 XML 태그를 넣어 추가 된 고양이 명령, 감사합니다

+1

싱크 콜 직후와 pmml 코드 앞에 'cat (" \ n")' 이렇게해야합니다. –

+0

감사합니다 J.Dimeo, 그 라인을 추가했습니다. – PKumar