>

R을 통해 SQL Server Management Studio에 연결 한 후 필요한 5 개의 데이터 테이블을 추출했습니다. 테이블 중 하나를 R로 추출하는 코드의 예는 다음과 같습니다.

sql = "SELECT * FROM dbo.tblBenchmarkindex" BenchmarkIndex1 <- sqlQuery(db, sql)`

다른 테이블 4 개에 대해이 정확한 코드를 수행합니다. 하나의 큰 "집계 테이블"을 얻으려면 여러 테이블을 병합해야하며 각 테이블이 하나 이상의 열로 연결되어 있기 때문에 병합이 최선의 방법이라고 생각합니다. 내가 지금 겪고있는 문제는 이것입니다 :

표 2에는 4 가지 변수가 있으며 약 808,000 개 이상의 관측치 : 요인, 노출, 데이터 날짜, BsID

표 3에는 3 가지 변수와 대략 8000 개의 관측치가 있습니다 : 요인, 위험, 데이터 날짜

예를 들어 시도한 것은 :

df<-merge(x=Table2,y=Table3,by="Factor",all.x=TRUE)

내가 얻은 출력에는 table3의 Datadate가 포함되어 있지 않습니다. 왼쪽 외부 조인을 수행했기 때문에 중복 관측치가 포함되어 있지 않기 때문입니다. 자연스러운 조인이나 오른쪽 외부 조인을하면 "추가 된"관측치가 많이 나타납니다.

간단한 질문은 :이 두 데이터 테이블을 공통 변수 (Factor)에 의해 추가 된 변수를 만들지 않고 어떻게 병합합니까? R을 처음 접했지만 여러 유형의 조인 함수를 이해한다고 느끼지만 올바르게 구현하지 않는다고 생각합니다.


  • 답변 # 1

    이 기능을 사용하면 병합 기능에 전달하려는 특정 data.frame 열만 선택하고 인수, 노출 및 위험 만 (DataDate 제외) 질문으로 병합 된 data.frame 결과를 생성해야합니다. 묻습니다 :

    df<-merge(x=Table2[,c("Factor","Exposure")],y=Table3[,c("Factor","Risk")],by="Factor",all.x=TRUE)
    
    

  • 이전 javascript - JQuery/AJAX PHP 파일에서 응답을 얻을 수 없음
  • 다음 파이썬에서 파일에 여러 값을 저장하는 방법