데이터 프레임 목록에 함수를 적용 할 때 까다로운 문제가 있습니다. 궁극적으로 저는 마약 사용 수치의 대용량 데이터 세트에 대한 개별 시계열 차트를 그려보고 싶습니다.조건부 테스트 후 목록의 데이터 프레임에서 여러 개의 플롯
내 데이터 세트는 5 년 동안 매월 수집 된 사용률의 30 가지 항생제로 구성됩니다. 그것은 3 열과 1692 행이 있습니다.
지금까지 각 항생제 클래스에 대한 개별 데이터 프레임 목록을 만들었습니다. (리스트의 이름은 약물이며 drug.class는 원래의 데이터 프레임으로부터 약품 이름의 문자 벡터이다)
drugList <- list()
n<-length(drug.class)
for (i in 1:n){
drugList[[i]] <-AB[Drug==(drug.class[i]),]
}
예를 들어, I는 다음 열이리스트에서 30 개의 데이터 프레임을 가지고
[[29]]
Drug Usage DateA
1353 Tobramycin 5.06 01-Jan-2006
1354 Tobramycin 4.21 01-Feb-2006
1355 Tobramycin 6.34 01-Mar-2006
.
.
.
Drug Usage DateA
678 Vancomycin 11.62 01-Jan-2006
679 Vancomycin 11.94 01-Feb-2006
680 Vancomycin 14.29 01-Mar-2006
각 플롯이 작성되기 전에 논리 테스트가 수행되어 시계열이 자동 상관되는지를 결정합니다. 목록에있는 데이터 프레임은 매우 길다. 다음과 같이 내가 테스트를 수행하는 함수를 작성했습니다 : 나는 이전에 개별 데이터 프레임에 내 모든 기능을 테스트 한
acTest <- function(){
id<-ts(1:length(DateA))
a1<-ts(Usage)
a2<-lag(a1-1)
tg<-ts.union(a1,id,a2)
mg<-lm(a1~a2+bs(id,df=3), data=tg)
a2Pval <- summary(mg)$coefficients[2, 4]
if (a2Pval<=0.05) {
TRUE
} else {
FALSE
}
}
예상대로 그들이 작동합니다.
저는 마약 목록의 각 데이터 프레임에 테스트를 적용하는 방법을 연구하고 있습니다. 나는이 일을 돕는 도움을받을 수 있다면 같은 방식으로 시계열 함수를 적용 할 수있는 위치에있을 것이라고 믿는다.
제공되는 지원에 대해 미리 감사드립니다.
감사합니다. 완벽하게 작동합니다. – John