R에 새로 워서 기초 및 어리석은 질문이 있습니다. 저의 모든 경험 많은 석사 과정에서 배울 수 있기를 바랍니다. 다른 모든 데이터 전문가에게도 도움이 될 수있는 사람이 되길 바랍니다.적용 기능 내에서 % in %를 사용하는 올바른 방법
id
이 같은 행에 id_lag
에있는 경우 내 목표는 test
의 각 행을 확인하는 것입니다. 그것은이 행 여부에 나열된 경우
test <- as.data.frame(matrix(NA,10,3))
names(test) <- c("Year","id","id_lag")
test[,1] <- c(2011,2012,2013,2010,2014,2015,2016,2010,2011,2012)
test[,2] <- c(76,560,342,7908,200,23,23,890,780,150)
test[,3] <- c("76,89","209,2000,400","342,333,234","908,888","","23","8097,5678","12","780,209","150,4504")
involved <- function(id,id_lag)
{
a <- return(id %in% scan(what = "", sep = ",",text = id_lag))
return(a)
}
check <- apply(test, 1, function(x,y) involved(test$id,test$id_lag))
내가 1 TRUE
등의 목록 (10)에 의해 또는 FALSE
을 기대하고있어 다음과 같이 내 샘플 코드입니다. 그러나, 나는 전체 목록을 10 번 스캔 한 TRUE
또는 FALSE
으로 10 x 10 매트릭스를 얻고 있습니다. 이 적용 함수를 제거 할 수있는 방법은 전체 목록을 전체 스캔하는 대신 라인을 통해서만 스캔 할 수 있습니까? 아니면 작동하는 data.tables 등 어떤 더 나은 접근법이 있습니까?
감사
앤
적용 기능 제품군에 대해 더 많이 살펴 보겠습니다. 감사! – Anne