2013-11-25 3 views
1

저는 R에 비교적 익숙하며 코드 작성 방법을 알 수 없습니다. 네덜란드의 모든 시정촌에 대한 데이터 세트가 있는데 b라는 내 목록에있는 지자체 만 인쇄하려고합니다. df [i]를 사용하여 데이터 프레임 안의 숫자를 선택하면 레벨도 포함됩니다. 레벨 없이도 작동합니까?for 루프에서 if 문을 잘못 이해했습니다.

DF 네덜란드의 모든 지방 자치 단체의 이름을 포함하고 B는 올바른 구문이 될 것

df <- mun_neth$GM_NAAM 
b <- list(gem_her$Nieuwe.gemeente) 
for(i in df){ 
    a <- df[i] 
    if(a in b){ 
    print(a) 
}} 
+0

코드에 몇 가지 문제가 있습니다. mun_neth $ GM_NAAM [% gem_her $ Nieuwe.gemeente]의 mun_neth $ GM_NAAM %을 원합니까? – Roland

+0

일반적으로 폐쇄 된 사람들은 이유가 명확하지 않은 이유에 대해 의견을 말하십시오. 따라서 저자는 자신의 질문을 수정할 기회를 갖습니다. 분명히, 모두가 이것이 불분명하다고 생각하지는 않습니다. IMHO, 질문, 대답 및 의견은 매우 명확한 그림을 그립니다. – flodel

답변

3

고쳐 지방 자치 단체의 목록입니다 (각 라인을주의 깊게 읽고 당신과 비교할 수 있습니다.)

df <- mun_neth$GM_NAAM 
b <- gem_her$Nieuwe.gemeente 
for(a in df){ 
    if(a %in% b){ 
    print(a) 
}} 

하지만 intersect을보고 한 번에 전체 루프 작업을 할 수 있습니다.

intersect(df, b) 
+0

빠른 반응에 감사드립니다. Intersect 작품과 Roland가 언급 한 내용이 작동합니다. 하지만 for 루프는 작동하지 않습니다. 실제로 이것은 제가 전에 시도한 것입니다. 그리고 이후의 추가로 시정촌을 반복하고 싶기 때문에 for 루프에 머물러있게하십시오. 이미 도움이되었지만 제안이 있습니까? – Zuenie

+0

만약 인자가 있다면'as.character()'안에'a' 및/또는'b'를 싸 웁니다. – flodel

+1

기다려, 왜'b'가 목록이 아닌 벡터인가? 'b <- gem_her $ Nieuwe.gemeente'을 시도하십시오. 나는 나의 대답을 편집했다. – flodel