[R-br] Manipulação de dados (strings)

Benilton Carvalho beniltoncarvalho em gmail.com
Quarta Março 14 22:59:41 BRT 2012


nao da' pra ser um one-liner... mas algo como o seguinte (assumindo
que os seus dados estejam num data.frame chamado myDat):

p1 = gsub('^(\\w+)\\s+.*\\s+(\\w+)$', '\\1\\2', myDat$NOME_PESSOA)
p2 = paste('DN', myDat$DTA_NASC_PESSOA, sep='')
p3a = gsub('^(\\w+)\\s.*\\s(\\w+)$', '\\1\\2', myDat$NOME_COMPLETO_MAE_PESSOA)
f = function(nm){
  paste(unlist(lapply(strsplit(gsub(gsub('^(\\w+)\\s.*\\s(\\w+)$',
'\\1 | \\2', nm), '', nm), ' '), substr, 1, 1)), collapse='')
}
p3b = sapply(myDat$NOME_COMPLETO_MAE_PESSOA, f)
final = paste(p1, p2, p3a, p3b, collapse='')

b

ps: desculpas pela minha funcao f()... depois eu penso em algo
elegante... isso se o henrique nao chegar humilhando...
pps: fica pra vc a tarefa de testar o codigo


Mais detalhes sobre a lista de discussão R-br