답변:
fileConn<-file("output.txt")
writeLines(c("Hello","World"), fileConn)
close(fileConn)
writeLines()
약 열 배 빠른 다음의 조합 sink()
과cat()
실제로 당신 은 그것을 할 수 있습니다sink()
:
sink("outfile.txt")
cat("hello")
cat("\n")
cat("world")
sink()
따라서 :
file.show("outfile.txt")
# hello
# world
간단한 것은 무엇입니까 writeLines()
?
txt <- "Hallo\nWorld"
writeLines(txt, "outfile.txt")
또는
txt <- c("Hallo", "World")
writeLines(txt, "outfile.txt")
"Hallo\nWorld"
는 문자 유형의 길이 1 벡터입니다. 그냥 시도하십시오txt <- "Hallo\nWorld"; is.character(txt) && length(txt) == 1 && is.vector(txt)
writeLines(txt, con="outfile.txt")
.
> coefficients<-summary(model) > writeLines(coefficients, "coefficients") Error in writeLines(coefficients, "coefficients") : invalid 'text' argument
나는 제안한다 :
writeLines(c("Hello","World"), "output.txt")
현재 허용되는 답변보다 짧고 직접적입니다. 할 필요는 없습니다 :
fileConn<-file("output.txt")
# writeLines command using fileConn connection
close(fileConn)
에 대한 설명서 writeLines()
는 다음 과 같이 말합니다.
(가) 경우
con
문자열은 함수 호출file
함수 호출 기간 동안 열린 파일 연결을 얻을.
# default settings for writeLines(): sep = "\n", useBytes = FALSE
# so: sep = "" would join all together e.g.
R에서 파일에 텍스트 행 을 쓰는 짧은 방법 은 이미 많은 답변에서 표시된 것처럼 cat 또는 writeLines 를 사용 하여 실현할 수 있습니다 . 가장 짧은 가능성 중 일부는 다음과 같습니다.
cat("Hello\nWorld", file="output.txt")
writeLines("Hello\nWorld", "output.txt")
"\ n"이 마음에 들지 않으면 다음 스타일을 사용할 수도 있습니다.
cat("Hello
World", file="output.txt")
writeLines("Hello
World", "output.txt")
writeLines 가 파일 끝에 개행 을 추가하는 동안 cat 의 경우가 아닙니다 . 이 동작은 다음을 통해 조정할 수 있습니다.
writeLines("Hello\nWorld", "output.txt", sep="") #No newline at end of file
cat("Hello\nWorld\n", file="output.txt") #Newline at end of file
cat("Hello\nWorld", file="output.txt", sep="\n") #Newline at end of file
그러나 가장 큰 차이점은 것입니다 고양이 가 사용하는 객체 R 과 writeLines에게 문자 벡터 인수로합니다. 따라서 예를 들어 writeLines에 대해 1:10 의 숫자 를 캐스트해야하며 cat과 같이 사용할 수 있습니다.
cat(1:10)
writeLines(as.character(1:10))
가능성을 반올림하려면 다음 writeLines()
과 같이 사용할 수 있습니다 sink()
.
> sink("tempsink", type="output")
> writeLines("Hello\nWorld")
> sink()
> file.show("tempsink", delete.file=TRUE)
Hello
World
나에게 항상 사용하는 것이 가장 직관적 인 것처럼 보이지만 print()
그렇게하면 출력이 원하는 것이 아닙니다.
...
> print("Hello\nWorld")
...
[1] "Hello\nWorld"
최상의 답변을 바탕으로 :
file <- file("test.txt")
writeLines(yourObject, file)
close(file)
점을 유의 yourObject
필요가 문자열 형식이어야; 사용 as.character()
이 필요한 경우 변환 할 수 있습니다.
그러나 이것은 모든 저장 시도에 너무 많은 타이핑입니다 . RStudio에서 스 니펫을 만들어 봅시다.
전역 옵션 >> 코드 >> 스 니펫에 다음을 입력하십시오.
snippet wfile
file <- file(${1:filename})
writeLines(${2:yourObject}, file)
close(file)
그런 다음 코딩하는 동안을 입력 wfile
하고 누릅니다Tab .
file <- file(...)
줄은 나에게 의심스러워 보인다. file
함수로 호출 file
하고 새로운 의미를 부여하지 않습니까? file()
이 코드 조각이 실행 된 후에도 작동 합니까 ? 지금 자신을 테스트하기 위해 R 설치에 액세스 할 수 없습니다 ...
간단한 것은 write.table()
어떻습니까?
text = c("Hello", "World")
write.table(text, file = "output.txt", col.names = F, row.names = F, quote = F)
매개 변수 col.names = FALSE
및 row.names = FALSE
TXT에 행과 열 이름을 제외 할 수 있는지 확인하고 매개 변수 quote = FALSE
제외합니다 TXT 각 줄의 시작과 끝에서 그 인용 부호. 데이터를 다시 읽으려면을 사용할 수 있습니다 text = readLines("output.txt")
.
최신 버전의 R에서는 writeLines
텍스트에 반환 및 공백이 유지되므로 \n
줄 끝에 포함 할 필요가 없으며 하나의 큰 텍스트 청크를 파일에 쓸 수 있습니다. 이것은 예제와 함께 작동합니다.
txt <- "Hello
World"
fileConn<-file("output.txt")
writeLines(txt, fileConn)
close(fileConn)
그러나이 설정을 사용하여 구조가있는 텍스트 (줄 바꿈 또는 들여 쓰기) 만 포함 할 수도 있습니다.
txt <- "Hello
world
I can
indent text!"
fileConn<-file("output.txt")
writeLines(txt, fileConn)
close(fileConn)