R의 read.table 및 read.csv 함수는 구분 된 데이터가 포함 된 파일 또는 URL을 구문 분석하고 R 데이터 프레임을 생성하는 데 사용됩니다. 그러나 이미 CSV로 구분 된 데이터 (쉼표와 \ n을 열과 레코드 구분 기호로 사용)가 포함 된 문자 벡터가 있으므로 파일이나 URL에서 읽을 필요가 없습니다. 이 문자 벡터를 먼저 디스크의 파일에 쓰고 다시 읽지 않고 read.table
, read.csv
또는 scan()
으로 전달할 수 있습니까? 디스크에 쓰는 것이 가능하다는 것을 알고 있지만이 불필요한 왕복을 필요로하지 않으며 문자 벡터에서 직접 데이터를 읽을 수있는 솔루션을 찾고 있습니다.문자 벡터에서 CSV 데이터를 구문 분석하여 데이터 프레임을 추출하려면 어떻게해야합니까?
16
A
답변
24
textConnection()을 사용하여 문자 벡터를 read.table()에 전달할 수 있습니다. 예 :
x <- "first,second\nthird,fourth\n"
x1 <- read.table(textConnection(x), sep = ",")
# x1
V1 V2
1 first second
2 third fourth
답변은 R mailing list에 있습니다.
2017 EDIT
7 년 후, 나는 이렇게 그것을 할 아마 것 : neilfws의 대답에
read.table(text = x, sep = ",")
3
사소한 부록. 이 래퍼 함수는 질문자가 데이터 프레임을 제공하는 대신 질문에 원시 데이터를 배치했을 때 stackoverflow에 대한 질문에 대답하는 데 유용합니다.
textToTable <- function(text, ...)
{
dfr <- read.table(tc <- textConnection(text), ...)
close(tc)
dfr
}
textToTable("first,second\nthird,fourth\n", sep = ",")
관련 문제
- 1. WMV 파일에서 특정 프레임을 추출하려면 어떻게해야합니까?
- 2. Perl을 사용하여 HTML 테이블 데이터를 추출하려면 어떻게해야합니까?
- 3. Perl에서 HTML 테이블의 데이터를 추출하려면 어떻게해야합니까?
- 4. CSV 파일에서 많은 데이터 프레임을 병합합니다.
- 5. PerlMagick을 사용하여 EXIF 데이터를 추출하려면 어떻게해야합니까?
- 6. Wireshark로 SOCKS를 통과하는 HTTP 데이터를 추출하려면 어떻게해야합니까?
- 7. DotNetOpenID AX 속성에서 데이터를 추출하려면 어떻게해야합니까?
- 8. XML :: Simple의 데이터 구조에서 값을 추출하려면 어떻게해야합니까?
- 9. 문자열로 된 벡터에서 문자 찾기
- 10. 사용자 입력에서 문자열을 추출하려면 어떻게해야합니까?
- 11. XML을 구문 분석하여 서버에서 반환했습니다.
- 12. CSV 파일의 상단에 데이터를 삽입하려면 어떻게해야합니까?
- 13. InDesign 단락 문자 CSV 파일의 문자?
- 14. URL에서 도메인을 추출하려면 어떻게해야합니까?
- 15. 개체에서 값을 추출하려면 어떻게해야합니까?
- 16. 문자열에서 숫자를 추출하려면 어떻게해야합니까?
- 17. 이미지 태그의 HTML 문자열을 구문 분석하여 SRC 정보를 얻으려면 어떻게해야합니까?
- 18. XML을 구문 분석하여 NSXMLParser를 사용하여 테이블보기에 표시
- 19. CSV 파일에 데이터 출력
- 20. preg_match로 특정 데이터를 추출하려면 어떻게합니까?
- 21. 모델의 벡터에서 데이터를 가져 오기 위해 netbeans에서 JList를 얻으려면 어떻게해야합니까?
- 22. 외부 JSON 소스의 데이터를 구문 분석하여 테이블에 표시 - 최신 데이터 가져 오기.
- 23. 다양한 비디오 파일 형식에서 메타 데이터를 추출하려면 어떻게해야합니까?
- 24. 파이썬 HTMLParser 라이브러리를 사용하여 특정 div 태그에서 데이터를 추출하려면 어떻게해야합니까?
- 25. R : 숫자 식 벡터에서 NAs 제거하기
- 26. CSV 캐리지 리턴 문자
- 27. 프레임을 닫고 새 프레임을 열려면 어떻게해야합니까? (revisited)
- 28. 실행 파일에서 배열을 추출하려면 어떻게해야합니까?
- 29. Ruby에서 웹 페이지를 구문 분석하여 URL을 검색하십시오.
- 30. xml을 구문 분석하여 Java에서 요소 찾기
이 접근법에 대한 한 가지 경고 :'textConnection()'은 행 수가 증가함에 따라 매우 느릴 수 있습니다. 223k 행에서 임시 CSV에 빠르게 쓰고 읽을 수 있습니다. –