R
-
[R] 다변량 데이터의 표본공분산행렬 계산R 2023. 10. 17. 22:25
n = 10 Y = matrix(c(35, 3.5, 2.8, 35, 4.9, 2.7, 40, 30, 4.38, 10, 2.8, 3.21, 6, 2.7, 2.73, 20, 2.8, 2.81, 35, 4.6, 2.88, 35, 10.9, 2.9, 35, 8.0, 3.28, 30, 1.6, 3.2), ncol = 3, byrow = TRUE) J = matrix(1, nrow = n, ncol = n) I = diag(1, 10) S = (t(Y) %*% (I - J / n) %*% Y) / (n - 1)
-
[R] count rows by groups: data.table vs dplyrR 2021. 6. 22. 18:49
1. 속도 : data.table 승 2. 코드 가독성, 작성 용이성 : dplyr 승 3. 코드 길이 : data.table 승 # 1. dplyr dt %>% dplyr::group_by(key1, key2) %>% dplyr::summarise(n = length(data_value)) # 2. data.table dt[, .(n = .N), keyby = .(key1, key2)] * .N 은 group 내 rows 수 계산
-
-
[R] eval(parse(text = x))R 2021. 4. 12. 17:25
data.table 작업시 for loop, cbind를 사용하지 않고 여러 컬럼을 동시에 만드는 방법 ex) base_methods = c("RF", "LR") target_text = paste0(base_methods, ".test") col_names = c("RF_ytest", "LR_ytest") DT[, (col_names) := lapply(target_text, function(x) eval(parse(text = x)))] 특정 벡터 뽑을 때 sapply(target_text, function(x) eval(parse(text = x)))
-
[R] data.table::dcast "aggregate function missing" 경고R 2021. 3. 23. 08:42
0. data.table::decast 는 long-to-wide 변환 함수 1. data.table::dcast 사용시 "aggregate function missing, defaulting to length" 경고가 뜬다면 그것은 하나의 key 에 두 개 이상의 값이 mapping 되기 때문이다. 따라서 중복 제거를 제대로 했는데 다시 검토해야 한다. 2. formula = LHS ~ RHS, value, value.var = guess(data) - LHS key 변수 (wide table의 row) - RHS key subjects의 속성 (wide table 의 column) - value.var : wide table column의 값 3. 하나의 key (cell)에 2개 이상의 값이 대응되..