이진 파일을 R에 읽으려고하는데이 파일에는 2 진 코드로 작성된 데이터 행이 있습니다. 따라서 하나의 열에 속한 하나의 전체 데이터 세트가 대신 데이터 행으로 저장됩니다. 여기 내 데이터가 어떻게 표시되는지를 보여줍니다 같은 :이진 파일을 R으로 읽음
바이트 1-4 : INT ID 바이트 5 : 문자 응답 문자 바이트 6-9 : INT RESP 달러 바이트 10 : 문자 유형 문자
사람이 나에게 도움이 될 수 있습니다 그림 이 파일을 R로 읽는 법을 배웁니다.
안녕 얘들 아,
여기까지 시도한 코드가 있습니다. 제한된 성공으로 몇 가지 시도를했습니다. 불행히도 공개 사이트에있는 데이터는 게시 할 수 없습니다. 사과드립니다. 저는 R에 비교적 익숙하지 않기 때문에 코드를 개선하는 방법에 관해 도움이 필요합니다. 미리 감사드립니다.
> binfile = file("File Location", "rb")
> IDvals = readBin(binfile, integer(), size=4, endian = "little")
> Responsevals = readBin(binfile, character(), size = 5)
> ResponseDollarsvals = readBin (binfile, integer(), size = 9, endian= "little")
Error in readBin(binfile, integer(), size = 9, endian = "little") :
size 9 is unknown on this machine
> Typevals = readBin (binfile, character(), size=4)
> binfile1= cbind(IDvals, Responsevals, ResponseDollarsvals, Typevals)
> dimnames(binfile1)[[2]]
[1] "IDvals" "Responsevals" "ResponseDollarsvals" "Typevals"
> colnames(binfile1)=binfile
Error in `colnames<-`(`*tmp*`, value = 4L) :
length of 'dimnames' [2] not equal to array extent
을 사용하면 데이터 파일의 처음 몇 줄을 게시 할 수 있습니까? – Seth
readBin으로 raw 바이트로 읽은 다음 파일과 같은 nrows를 가진 행렬로 밀어 넣은 다음 열 집합에서 readBin을 읽습니다. 그것은 빠르다. 이것은 본질적으로보다 복잡한 형식을 위해 모든 헤더 항목을 버리고 버려야합니다. http://stackoverflow.com/questions/12931979/reading-binary-files-in-r – mdsumner
파일을 제공하면 함께 제공됩니다. 보기. – mdsumner