Em Sex 24 jun. 2016, às 17:08, Elias Carvalho via R-br escreveu:
Pessoal,
Eu preciso fazer uma análise para verificar a relação das variáveis com a morte e meus dados são semelhantes a tabela abaixo:
CD_MUN
| MUNIC
| UF
| POPULAÇÃO
| UTI
| PIB
| AUTO
| MOTO
| ONIBUS
| CAMINHÃO
| MORTE
|
1
| A
| X
| 3577
| 10
| 18533,94
| 1549
| 661
| 40
| 360
| 2
|
2
| B
| Y
| 11958
| 2
| 12487,36
| 5402
| 2234
| 185
| 1401
| 11
|
3
| C
| Z
| 6936
| 8
| 9947
| 2187
| 1478
| 60
| 666
| 6
|
Nessa tabela o município da linha 2 tem mais população, mais PIB, mais veículos e mais morte. Isso é óbvio porque a sua população e maior, mas isso não necessariamente quer dizer que esse município tenha mais mortes ou que elas são causadas mais provavelmente pela frota de carros ou motos.
Então pensando em evitar vieses, e por isso eu pensei em normalizar os dados dividindo as colunas UTI, PIB, AUTO, MOTO, ONIBUS, CAMINHÃO e MORTE pela coluna da POPULAÇÃO e dividir por 10.000, por exemplo para MORTE da linha 2, ficaria: (11/11958)*1000 = 9,1989.
Primeiro, algumas firulas, caso interessem.
Em epidemiologia costumamos chamar de calcular a taxa, o que você chama de normalizar a variável. Não estou desclassificando sua denominação, apenas alertando para o fato de ajudá-lo a encontrar referências relevantes e possivelmente a comunicar seus resultados.
Ou você divide a população por dez mil, ou você multiplica a taxa por dez mil. Você não divide a taxa por dez mil. Naturalmente, assim como 15% é igual a 0,15, e não igual a 100 * 0,15, 9 óbitos por 10.000 habitantes é igual a 0,0009 óbitos por habitante, e não a 10.000 vezes 0,0009 óbitos por habitante. Mas esse preciosismo é algo que não tenho coragem de dividir com meus colegas da área da saúde.
Sugiro que você considere dividir por 100.000, em vez de 10.000, para tornar seus resultados mais facilmente comparáveis. (Veja a publicação "INDICADORES BÁSICOS
PARA A SAÚDE NO BRASIL:
CONCEITOS E APLICAÇÕES", da RIPSA).
Dessa forma a tabela ficaria assim:
CD_MUN
| MUNIC
| UF
| POPULAÇÃO
| UTI
| PIB
| AUTO
| MOTO
| ONIBUS
| CAMINHÃO
| MORTE
|
1
| A
| X
| 3577
| 27,9564
| 51814,2018
| 4330,4445
| 1847,9172
| 111,8256
| 1006,4300
| 5,5913
|
2
| B
| Y
| 11958
| 1,6725
| 10442,6827
| 4517,4778
| 1868,2054
| 154,7081
| 1171,6006
| 9,1989
|
3
| C
| Z
| 6936
| 11,5340
| 14341,1188
| 3153,1142
| 2130,9112
| 86,5052
| 960,2076
| 8,6505
|
Ou ainda poderia usar alguma ferramento do R que fosse mais confiável ?
Não acho necessário usar alguma função ou pacote especial.
Supondo que você esteja tenha um data.frame (o exemplo é facilmente adaptável para data.table) chamado "dados",
dados$MORTE_N <- with(dados, 10000 * MORTE / POPULAÇÃO)
ou, seguindo meu próprio conselho,
dados$MORTE_TX <- with(dados, 100000 * MORTE / POPULAÇÃO)
Basta adaptar a linha para as outras variáveis. Em princípio, você não deveria repetir a si mesmo, mas para sete linhas acho mais fácil repetir um procedimento simples como esse, em vez de fazer algo mais sofisticado como criar um laço que crie as colunas normalizadas a partir de um vetor com o nome das colunas originais.
Atenciosamente,
Leonardo Fontenelle