예를 들어 데이터 집합을 게시하는 가장 좋은 방법은 dat
은 데이터 세트의 이름입니다 dput(head(dat, 20))
을 사용하는 것입니다. 그래픽 이미지는 정말 나쁜 선택입니다.
DATA.
dat <-
structure(list(Test1 = c(90, NA, 81), Test2 = c(91, 79, NA),
Test3 = c(92, 98, 83)), .Names = c("Test1", "Test2", "Test3"
), row.names = c("Mark", "Mike", "Nick"), class = "data.frame")
w <-
structure(list(Test1 = c(18, NA, 27), Test2 = c(36.4, 39.5, NA
), Test3 = c(36.8, 49, 55.3)), .Names = c("Test1", "Test2", "Test3"
), row.names = c("Mark", "Mike", "Nick"), class = "data.frame")
CODE.
기본 패키지 stats
및 sapply
에 함수 weighted.mean
을 사용할 수 있습니다. 메모 및 가중치의 데이터 집합이 matrix
클래스의 R 개체 인 경우 unlist
이 필요하지 않습니다.
sapply(seq_len(nrow(dat)), function(i){
weighted.mean(unlist(dat[i,]), unlist(w[i, ]), na.rm = TRUE)
})
그것은 자신을 갈 필요 당신이 문제에 실행 경우 여기에 몇 가지 예제 코드를 게시하려고 R.에서 할 확실히 가능 : 다음은이 작업을 수행 할 수있는
tidyverse
방법입니다. –감사합니다. 관련 질문에는 비슷한 코드 샘플이 많이 있습니다. [link] (https://stackoverflow.com/questions/40541172/weighted-average-value-in-the-presence-of-naues-rq=1), N/A가있을 때 가장 많이 변이하거나 평균으로 대체하거나 0으로 대체하려는 것 같습니다. 부담스럽지 않고 같은 질문을하지 않고서도 나머지 변수를 다시 조정하려는 내 사례와의 명시적인 차이를 표시하는 것이 더 쉬울 수도 있다고 생각했습니다. 나는 그것을 다른 곳에서 보지 못했다. 그리고 그것은 ** na.rm **을 사용하여 명백하고 짧은 대답 일 수 있습니다. – milaske