Eu fiz isso. Mas pensei que pudesse alterar vários campos de uma mesma
linha de uma vez só. Seria mais prático para mim, pois tenho que alterar
numa mesma linha, ora 2 campos, ora 3.
De qualquer forma, obrigada pela ajuda.



Em 22 de abril de 2013 16:09, Daniel Marcelino <[email protected]>escreveu:

> Putz, entendi errado então.
>
> Olha só então:
> Rodrigo exemplo:
>
> # 2 indica a posição da coluna. No meu exemplo vou colocar 2, mas você
> precisa trocar para a posição da coluna no seu data frame.
>
> dados[[345, 2]] <- 20081005
>
>
>
>
> 2013/4/22 Rodrigo Coster <[email protected]>
>
>> Daniel,
>>
>> ela nao quer substituir FATIMALIMA por FATIMA LIMA (ok, até quer, mas ela
>> ja resolveu esse problema com o comando que ela passou). Ela quer alternar
>> a data da internação e o motivo da alta de quando o nome é
>> FATIMALIMA/FATIMA LIMA.
>>
>>
>> 2013/4/22 Daniel Marcelino <[email protected]>
>>
>>> A solução apresentada pelo Rodrigo é muito mais fácil uma vez que você
>>> sabe a localização (a linha da observação) onde aparece "FATIMALIMA". No
>>> entanto, a minha função foi pensada na possibilidade de você não saber
>>> exactamente onde se encontra as observações, por exemplo, num data frame
>>> muito grande.
>>> Como você não passou um exemplo reproduzível, vou mostra aqui da
>>> seguinte forma:
>>>
>>>
>>>
>>> nome <- rep("FATIMALIMA", 10)
>>> numero <- seq(1:10)
>>> dados <- data.frame(nome, numero)
>>>
>>>
>>> gsr <-
>>> function(file, search, replace) {
>>>    if (length(search) != length(replace)) stop("The object search and
>>> replace must have the same number of items \n")
>>> changing <- as.character(file)
>>>
>>>   for (i in 1:length(search))
>>>   {
>>>     cat("Replacing: ", search[i], " with: ", replace[i], "\n")
>>> changed <- replace(changing, changing == search[i], replace[i])}
>>>
>>> cat("\n")
>>>   return(changed)
>>> }
>>>
>>>
>>> # onde na coluna "nome" for FATIMALIMA a função vai substituir pro FATIMA
>>> LIMA.
>>> Veja os argumentos; file, search, replace.
>>>
>>> dados$nome <- gsr(dados$nome, "FATIMALIMA", "FATIMA LIMA" )
>>>
>>>
>>>
>>>
>>> 2013/4/22 Rodrigo Coster <[email protected]>
>>>
>>>> Fatima, de maneira genérica, para mudar a j-ésima variavel (coluna) da
>>>> i-ésima observação (linha), tu pode usar
>>>> dados[i, j] <- NOVO VALOR
>>>>
>>>> O que tu precisa é identificar os i (as linhas), dado que o j (a
>>>> variavel que tu quer mudar) já é algo sabido.
>>>>
>>>>
>>>>
>>>> 2013/4/22 Fátima Lima Paula <[email protected]>
>>>>
>>>>> Daniel, não entendi.
>>>>> Por exemplo, na linha 345 eu quero trocar 20081003 por 20081005.
>>>>> Como faço com essa função?
>>>>>
>>>>>
>>>>> Em 22 de abril de 2013 14:38, Daniel Marcelino 
>>>>> <[email protected]>escreveu:
>>>>>
>>>>> Eu sei que essa função é imensa e que há formas melhores de fazer
>>>>>> isso. Uso uma função para fazer isso. Primeiro passo a função no prompt:
>>>>>>
>>>>>> gsr <-
>>>>>> function(file, search, replace) {
>>>>>>   if (length(search) != length(replace)) stop("The object search and
>>>>>> replace must have the same number of items \n")
>>>>>> changing <- as.character(file)
>>>>>>
>>>>>>   for (i in 1:length(search))
>>>>>>   {
>>>>>>     cat("Replacing: ", search[i], " with: ", replace[i], "\n")
>>>>>> changed <- replace(changing, changing == search[i], replace[i])}
>>>>>>
>>>>>> cat("\n")
>>>>>>   return(changed)
>>>>>> }
>>>>>>
>>>>>>
>>>>>> Daí é só passar o que você quiser:
>>>>>>
>>>>>> dados$coluna <- gsr(dados$coluna, "FATIMALIMA", "FATIMA LIMA" )
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2013/4/22 Fátima Lima Paula <[email protected]>
>>>>>>
>>>>>>> Pessoal, quando fui substituir uns nomes no meu banco, usei
>>>>>>> levels(banco$nome) <- gsub("FATIMALIMA", "FATIMA LIMA",
>>>>>>> levels(banco$nome))
>>>>>>> Agora o problema é outro, tenho uma linha com nome, data de
>>>>>>> nascimento, data de internação, motivo da alta etc.
>>>>>>> Em uma específica linha, quero trocar o motivo da alta e a data da
>>>>>>> internação. Não posso usar o comando acima pois existe um monte de 
>>>>>>> outros
>>>>>>> motivos de saida 21, por exemplo, e eu só quero substituir para a FATIMA
>>>>>>> LIMA.
>>>>>>> Alguém, por favor, pode me ajudar?
>>>>>>> Obrigada
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> R-br mailing list
>>>>>>> [email protected]
>>>>>>> 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.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> \begin{signature}
>>>>>> Daniel Marcelino
>>>>>> ☁ [email protected]
>>>>>> ☎ (514) 343 6111 #3799
>>>>>> Skype: d.marcelino
>>>>>> ✎ 3200 Jean Brillant,  Office C5071
>>>>>> Montreal, QC; H3T 1N8
>>>>>> Canada
>>>>>> \end{signature}
>>>>>>
>>>>>> "Small steps toward a much better world"
>>>>>>
>>>>>> _______________________________________________
>>>>>> R-br mailing list
>>>>>> [email protected]
>>>>>> 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.
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> R-br mailing list
>>>>> [email protected]
>>>>> 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.
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> R-br mailing list
>>>> [email protected]
>>>> 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.
>>>>
>>>
>>>
>>>
>>> --
>>> \begin{signature}
>>> Daniel Marcelino
>>> ☁ [email protected]
>>> ☎ (514) 343 6111 #3799
>>> Skype: d.marcelino
>>> ✎ 3200 Jean Brillant,  Office C5071
>>> Montreal, QC; H3T 1N8
>>> Canada
>>> \end{signature}
>>>
>>> "Small steps toward a much better world"
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> [email protected]
>>> 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.
>>>
>>
>>
>> _______________________________________________
>> R-br mailing list
>> [email protected]
>> 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.
>>
>
>
>
> --
> \begin{signature}
> Daniel Marcelino
> ☁ [email protected]
> ☎ (514) 343 6111 #3799
> Skype: d.marcelino
> ✎ 3200 Jean Brillant,  Office C5071
> Montreal, QC; H3T 1N8
> Canada
> \end{signature}
>
> "Small steps toward a much better world"
>
> _______________________________________________
> R-br mailing list
> [email protected]
> 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.
>
_______________________________________________
R-br mailing list
[email protected]
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.

Responder a