2017-11-27 2 views
2

2 개의 H2OFrame간에 교차 결합을 원합니다. 내가 all =TRUE를 사용하는 경우 엄밀히 H2OFrame에 를 해결 찾고R에서 두 개의 H2OFrame 사이에서 교차 결합을 수행하는 방법?

col1.1 <- c('A', 'B', 'E', 'C', 'F', 'D') 
dummy <- rep(1,6) 

d1.hex <- as.h2o(cbind(col1.1, dummy)) 

col2.1 <- c('xx', 'yy', 'zz', 'ww') 

dummy <- rep(1,4) 

d2.hex <- as.h2o(cbind(col2.1, dummy)) 

이 오류가 발생합니다 : 나는 기본적를 사용하는 경우 구현되지 않은이

h2o.merge(d1.hex, d2.hex, all = TRUE) 

, 결과를 결합하는 결합 교차되지

h2o.merge(d1.hex, d2.hex) 

더미 col1.1 col2.1

,

1 A XX

1 B의 XX

1 E XX

1 C XX

1 F는 XX

1 I가 시도

D의 XX 열을 범주 형 또는 숫자 형으로 변경하는 데이터 유형 변경 성공하지 못했습니다. 문제 해결에 도움을 요청하십시오.

은 당신이 할 수없는 절망적 대답은 당신

+0

그래서 h2o에 익숙하지는 않지만 문제가있는 곳입니다. 'merge (df1, df2, all = TRUE) '는 R에서 크로스 조인하는 올바른 방법입니다. –

+0

@MattW. 감사합니다. 그러나 H2OFrame에 대한 해결책을 찾고 있습니다. 파일을 읽는 것부터 예측하는 것까지, 나는 물을 사용하려고 노력하고 있으며 나의 데이터 세트는 엄청납니다. –

답변

0

감사하고, 두 버그 리포트 이미 있습니다

https://0xdata.atlassian.net/browse/PUBDEV-4516

https://0xdata.atlassian.net/browse/PUBDEV-3699

가장 간단한 해결 방법은 다운로드하는 것입니다 귀하의 모든 데이터를 가져 와서 R 클라이언트에서 수행하십시오. 그러나 큰 데이터는 불가능할 수도 있습니다. (D1)에서 각각의 고유 한 값을 tmp

  • tmp2 = h2o.merge(tmp, d2.hex, all.y = TRUE)
  • 반복에 d1.hex에서 처음으로 고유 한 가치와

    1. 복사 행 : 당신은 H2O 클러스터에서 작업을 수행해야하는 경우 루프가 필요합니다 .마녀. 그런 다음 마지막으로 tmp2 개의 테이블 모두에서 h2o.rbind()을 수행하십시오.

      또는 기존 오픈 소스 솔루션 : 구현되지 않은 코드를 직접 구현하거나 구현하려면 h2o.ai를 지불하십시오.

    +0

    @ 대런 감사합니다. 당신의 도움과 정답을 이해하십시오. –

    관련 문제