2017-01-26 3 views
1

데이터 분석을 위해 R을 사용하고 있으며 측정 값이 설문 조사에서 관리 된 순서를 나열하는 문자열 변수가 있습니다. 한 응답자의 문자열 변수는 다음과 같습니다.grepl (R)을 사용하여 문자열에서 첫 번째 표현식을 찾으십시오.

"pimgrwelcomerealstartnamelessTaskinstruct_itemshealth_itemsinstruct_selfsexp_instiat_esteemdebriefing1lastpage" 

"grepl"을 사용하여 이러한 측정 순서를 테스트 할 수있는 방법이 있습니까? 예를 들어, "health_items"가 "instruct_self"보다 문자열의 앞부분에 오는 지 알 수 있습니까? (위의 문자열에 해당)? 그렇다면 더미 변수를 만들어서 주문 효과를 테스트 할 수 있습니다.

모두에게 감사드립니다.

답변

2

나는 대답으로이 글을 쓰는 아니에요하지만 단지이 문제에 대한 내 생각을 공유하기 : 당신이 있는지 확인하는 데 사용할 수있는 두 가지 방법을 사용하여 문자열의 위치를 ​​추출 할 수있는 사람이 grepl

에 도움이되기를 바랍니다 첫 번째 문자열은 두 번째 앞서 온 :

sapply(c("health_items", "instruct_self"), function(x) str_locate(s, x)) 
# this should return a vector with the start index. 
+1

grepl를 사용하지 않지만이이 해결책으로 문제를 완벽하게 해결 : 먼저 들어온

regexpr("health_items", s). #where s is your string # or library(stringr) str_locate(s, "health_items") 

그래서 알고 d는 문제의 해답으로 간주되어야합니다. – user2917781

+0

@ joel.wilson 예 - 잘 작동했습니다! – user2917781