
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

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.

Estava chegando em uma solução semelhante à proposta pelo Rodrigo até que li a resposta do Benilton. Muito boa. Eu sou ruim com expressões regulares e o help do R não me ajudou muito. Poderiam indicar outras fontes adicionais? Obrigado, Paulo Em 17 de outubro de 2011 16:49, Benilton Carvalho < beniltoncarvalho@gmail.com> escreveu:
gsub(".*(PESCADOR|EMBARCACAO).*", "\\1", dados[["pesc.emb"]]) _______________________________________________ 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.

Pessoal, todas as opções funcionaram. Muito obrigado mesmo, pela ajuda e pela prontidão na resposta. Muito obrigado mesmo! _______________ Rodrigo Sant'Ana Oceanógrafo Em 17 de outubro de 2011 17:14, Benilton Carvalho < beniltoncarvalho@gmail.com> escreveu:
Os livros da O'Reilly e http://www.regular-expressions.info/ _______________________________________________ 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.

para Regex tem o livro do Aurelio Verde, em portugues, bom e divertido! veja no site dele: aurelio.net vale a pena dispensar um tempo para ver o site dele... [ ]'s cleber Em 17/10/2011 17:08, Paulo Nogueira escreveu:
Estava chegando em uma solução semelhante à proposta pelo Rodrigo até que li a resposta do Benilton. Muito boa.
Eu sou ruim com expressões regulares e o help do R não me ajudou muito. Poderiam indicar outras fontes adicionais?
Obrigado, Paulo
Em 17 de outubro de 2011 16:49, Benilton Carvalho <beniltoncarvalho@gmail.com <mailto:beniltoncarvalho@gmail.com>> escreveu:
gsub(".*(PESCADOR|EMBARCACAO).*", "\\1", dados[["pesc.emb"]]) _______________________________________________

ops, esqueci do complemento importante: o conteudo do livro é disponivel gratuitamente online (ou era há algum tempo atras) já que o Aurelio parece ser figurinha militante para Software Livre e conteudos afins tb Livres...
para Regex tem o livro do Aurelio Verde, em portugues, bom e divertido!
veja no site dele: aurelio.net
vale a pena dispensar um tempo para ver o site dele...
[ ]'s cleber
Em 17/10/2011 17:08, Paulo Nogueira escreveu:
Estava chegando em uma solução semelhante à proposta pelo Rodrigo até que li a resposta do Benilton. Muito boa.
Eu sou ruim com expressões regulares e o help do R não me ajudou muito. Poderiam indicar outras fontes adicionais?
Obrigado, Paulo
Em 17 de outubro de 2011 16:49, Benilton Carvalho <beniltoncarvalho@gmail.com <mailto:beniltoncarvalho@gmail.com>> escreveu:
gsub(".*(PESCADOR|EMBARCACAO).*", "\\1", dados[["pesc.emb"]]) _______________________________________________

Caso queira começar por algo simples, dê uma olhada nestes CMRs de aula http://www.leg.ufpr.br/~walmes/ensino/ce223-2011-01/ce223-2011-01-aula20.R http://www.leg.ufpr.br/~walmes/ensino/ce223-2011-01/ce223-2011-01-aula21.R À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Pessoal, valeu novamente pelas indicações de texto, obrigadão. E Sr. Prof. Walmes, quero lhe agradecer pela indicação dos links abaixo, tenho estudado algumas das suas aulas disponibilizadas no site do LEG, elas tem me auxiliado bastante, não cheguei nas aulas 20 e 21, mas vou dar uma atenção a elas, visto meus últimos problemas.. muito obrigado _______________ Rodrigo Sant'Ana Oceanógrafo Em 17 de outubro de 2011 18:14, Walmes Zeviani <walmeszeviani@gmail.com>escreveu:
Caso queira começar por algo simples, dê uma olhada nestes CMRs de aula
http://www.leg.ufpr.br/~walmes/ensino/ce223-2011-01/ce223-2011-01-aula20.R http://www.leg.ufpr.br/~walmes/ensino/ce223-2011-01/ce223-2011-01-aula21.R
À disposição. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================
_______________________________________________ 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.

Benilton e Walmes, muito obrigado pelos links. Vou estudar o material. Grato, Paulo Em 17 de outubro de 2011 18:34, Rodrigo Sant'Ana <rodrigo.gringo@gmail.com>escreveu:
Pessoal, valeu novamente pelas indicações de texto, obrigadão.
E Sr. Prof. Walmes, quero lhe agradecer pela indicação dos links abaixo, tenho estudado algumas das suas aulas disponibilizadas no site do LEG, elas tem me auxiliado bastante, não cheguei nas aulas 20 e 21, mas vou dar uma atenção a elas, visto meus últimos problemas..
muito obrigado
_______________ Rodrigo Sant'Ana Oceanógrafo
participantes (6)
-
Benilton Carvalho
-
Cleber N.Borges
-
Paulo Nogueira
-
Rodrigo Coster
-
Rodrigo Sant'Ana
-
Walmes Zeviani