Maciej B. Doktorant
Temat: Podział i połączenie tekstów
Witam,chciałem zapytać czy może znacie sposób aby wykonać następujące zadanie.
Mam dane wyborcze i chce przekodować adresy komisji wyborczych (~25k) na współrzędne geograficzne. Zanim jednak to zrobię muszę oddzielić początek członu (np. Dom Ludowy, Szkoła Podstawowa nr 4) od reszty adresu.
Wykorzystuję funkcję strpslit() ale nie wiem jak następnie następnie połączyć każdy elementy z listy w jeden wiersz. Innymi słowy wykonać operację odwrotną :)
Kod poniżej
#przykładowe dane
okr<-c("Dom Ludowy, Otok 44, 59-700 Bolesławiec","Świetlica Wiejska, ul. 22 Lipca 27, Wykroty, 59-730 Nowogrodziec","Sala Zebrań, Suszki 45a, 59-700 Bolesławiec ")
#rozdzielam przecinkiem
a<-strsplit(okr,"\\,")
#usuwam pierwszą nazwę
for (i in 1:length(a)) a[[i]]<-a[[i]][-1]
Wydaje mi się, że pewnie to jakiś łatwy trick ale męczę się z tym :D
Z góry dziękuję :)
edit: korzystałem jeszcze z funkcji substr i regexec to znalezienia pierwszego przecinka, ale wydajność ale trwa to wieki...
edit2: nie zawsze są 3 człony adresu, czasem 2 czasem 4 i do.call wyrzuca błędy.Maciej B. edytował(a) ten post dnia 07.02.12 o godzinie 20:56