2009-11-12 4 views
9

R에 hdf5를로드하고 일부 문제가 발생하는 중입니다. R 및 HDF5 문제

  • HDF5 1.8.3는
  • hdf5_1.6.9.tar.gz에서 MacPorts를 통해 설치 X 10.6

    • R 2.10.0 (64) 맥 OS에 : 여기가 내 환경을 구성하는 데 걸린 단계입니다 CRAN

    내 버전의 HDF5와 R 모듈이 예상하는 비 호환성 문제가 의심 스럽습니다. -와 - HDF5

    R CMD는 = 'CPPFLAGS = -I/옵션/지역/포함'--configure 인자들 = '--configure - 바르를 설치 완성도를 위해 여기에 내가 R 모듈을 설치하는 방법입니다 =/opt/local 'hdf5_1.6.9.tar.gz

    괜찮습니다. 내가 파일을로드 할 때 라이브러리는 문제없이로드 할 것 같다,하지만 데이터가 반환되지 않습니다 :

    라이브러리 (HDF5)

    hdf5load ("test.h5")를

    NULL

    그러나,

    OSX : 데이터 스캇 $의 h5dump의 test.h5 HDF5 "test.h5"{ GROUP "/"{ DATASET "DSET"{ 데이터 유형 H5T_STD_I32LE DATASPACE의 SIMPLE {(31)/(31)} DATA { (0) : 1, 2, 4, 8, 16, 32, 64, 128 (14) : 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, (22) : 4194304, 8388608, 16777216, 33554432, 67108864, 134218828 , (28) : 268435456, 536870912, 1073741824 } } } }

    어떤 생각이? 사전에

    감사합니다.

  • +0

    이 질문에 답할 수는 없지만 R 2.10에서 Mac 빌드가 실패했다는 것을 지적했습니다. http://www.r-project.org/nosvn/R.check/r-release-macosx-ix86 /hdf5-00check.html. – Shane

    +0

    사실이지만 빌드가 실패한 이유는 거의 없습니다. 나는 수동으로 오류나 경고없이이 파일을 빌드했다. –

    +0

    hdfload가 올바른 디렉토리를 찾고 있는지, 확실한가요? 나는 그토록 많은 일을하는 크라퍼를 찾아왔다. –

    답변

    2

    hdfload()verbosity 인수를 사용하고 ls()을 사용하여 환경을 확인하십시오. hdfload()에는 부작용이 있으며 현재 환경에 테이블을로드합니다. NULL이 기본 반환 값입니다.

    • load : 논리 값에는 인수 load=TRUE 개체를 명명 된 목록의 구성 요소로 반환됩니다를 사용하는 경우. 'FALSE'인 경우 개체는 명명 된 목록의 구성 요소로 반환됩니다. 'TRUE'(기본값) 인 경우 개체는 각각 이름을 가진 개별 변수로로드됩니다.이 경우이 함수는 아무 것도 반환하지 않습니다.

    내 Mac에서는 모든 설정이 동일합니다.

    R> rm(list=ls()) 
    R> ls() 
    character(0) 
    R> hdf5load("TestHDF5.h5", verbosity=3) 
    hdf5_global_verbosity=3 load=1 
    Processing object: Dataset0 ...... its a dataset...Dataset has ID335544326 
    Dataset has tid 201326902 
    Dataset has space id 268435467 
    Dataset has rank 1 
    Dataset has dims/maxdims: 1/1 
    Allocating vector with rank=1 dim=1 
    calling vector_io. Hangs here with big datsets 
    Setting buffer size in plist 
    About to read with bufsize = 50 
    in string_ref: count=1, size=25 srcbf=25 
    leaving string_ref 
    Done read 
    in vector_io: permuting 
    in vector_io: tidying 
    Phew. Done it. calling iinfo->add 
    Rank > 1 or not VECSXP 
    Calling hdf5_load_attributes 
    back from hdf5_load_attributes 
    ...Finished dataset 
    Processing object: Table0 ...... its a dataset...Dataset has ID335544327 
    Dataset has tid 201326906 
    Dataset has space id 268435468 
    Dataset has rank 1 
    Dataset has dims/maxdims: 1/1 
    Dataset has type = VECSXP and rank 1 
    Reading... 
    ....done 
    in string_ref: count=1, size=25 srcbf=25 
    leaving string_ref 
    ...Finished dataset 
    NULL 
    R> ls() 
    [1] "Dataset0" "Table0" 
    
    6

    CRAN에서 h5r 패키지를 사용해 볼 수도 있습니다. 이 패키지는 새로운 hdf5 라이브러리를 사용하며 hdf5 라이브러리보다 많은 기능을 제공합니다.

    +0

    CRAN에없는 것 같습니다. [r-forge] (http://r-forge.r-project.org/projects/h5r)에 있습니다. /) –

    +0

    예, 죄송합니다. 그것은 r-forge에 있습니다. R-forge는 CRAN에서 물건을 얻는 기능을 제공했지만 어디로 갔는지는 알 수 없습니다. – jimmyb