
Aqui uma solução: sapply(strsplit(as.character(dados$pesc.emb),' '),function(x) c(x[1],paste(x[-1],collapse=' '))) []'s 2011/10/17 Rodrigo Sant'Ana <rodrigo.gringo@gmail.com>
Caros Companheiros da R-BR,
estou com um problema, que provavelmente, seja muito simples de resolver. Mas confesso, já quebrei a cabeça para resolver e num consegui chegar ao resultado que desejo. Abaixo, tento replicar meu problema para que vocês possam me ajudar! Muito obrigado pela atenção de todos!
# Eis uma réplica simplificada da base de dados! dados <- data.frame(municipio = c("A", "B", "C", "D", "E"), pesc.emb = c("PESCADOR JOAO","EMBARCACAO ZE","PESCADOR FELIPE","EMBARCACAO AMARGURA II","EMBARCACAO STAR"))
dados municipio pesc.emb 1 A PESCADOR JOAO 2 B EMBARCACAO ZE 3 C PESCADOR FELIPE 4 D EMBARCACAO AMARGURA II 5 E EMBACACAO STAR
# Preciso criar uma coluna classificando a informação da linha em "PESCADOR" ou "EMBARCACAO", ou seja, preciso extrair a string "PESCADOR" ou "EMBARCACAO" da coluna pesc.emb. Já tentei utilizar todas as funções do pacote stringr, porém não obtive exito, pois preciso ambos na mesma coluna.
library(stringr)
dados$classify <- str_extract(dados$pesc.emb, "PESCADOR") dados$classify2 <- str_extract(dados$pesc.emb, "EMBARCACAO") dados municipio pesc.emb classify classify2 1 A PESCADOR JOAO PESCADOR <NA> 2 B EMBARCACAO ZE <NA> EMBARCACAO 3 C PESCADOR FELIPE PESCADOR <NA> 4 D EMBARCACAO AMARGURA II <NA> EMBARCACAO 5 E EMBARCACAO STAR <NA> EMBARCACAO
sei que pode parecer simples, mas estou enfrentando dificuldades em solucionar este problema.
Fico super agradecido pela atenção de todos,
abs
_______________ Rodrigo Sant'Ana Oceanógrafo
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.