
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço... -- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)

Rodrigo, Faça o teste... str(Carbono) Veja que ele vai ter dizer quantos níveis (levels) há para a sua variável "classe"! Agora veja também o str(subset(Carbono, Carbono$calsse == 'arenosa')) Você vai ver que o número de classe continua o mesmo, ou seja, o subset "herda" algumas informações do data.frame de origem! Uma saída é usar droplevels() que vai retirar os níveis que não são usados do seu subset! P.S.: Tudo que eu falei é apenas fruto de chute, intuição e algumas pitadas de adivinhação, visto que você não nos forneceu um CMR! att, FH 2014-04-10 16:49 GMT-05:00 Rodrigo Muniz <uenf.rodrigo@gmail.com>:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.

Obrigado Fernando, o problema era exatamente o que você relatou, utilizei o droplevels() e deu certo. Desculpe não ter fornecido o CRM, como eu desconhecia totalmente a origem do problema, achei que fosse algo com o Rstudio ou mesmo ao windows e não aspectos de programação. De qualquer forma agradeço Att... 2014-04-10 18:56 GMT-03:00 FHRB Toledo <fernandohtoledo@gmail.com>:
Rodrigo,
Faça o teste...
str(Carbono)
Veja que ele vai ter dizer quantos níveis (levels) há para a sua variável "classe"!
Agora veja também o str(subset(Carbono, Carbono$calsse == 'arenosa'))
Você vai ver que o número de classe continua o mesmo, ou seja, o subset "herda" algumas informações do data.frame de origem!
Uma saída é usar droplevels() que vai retirar os níveis que não são usados do seu subset!
P.S.: Tudo que eu falei é apenas fruto de chute, intuição e algumas pitadas de adivinhação, visto que você não nos forneceu um CMR!
att, FH
2014-04-10 16:49 GMT-05:00 Rodrigo Muniz <uenf.rodrigo@gmail.com>:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.
_______________________________________________ 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.
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)

Rodrigo, a rotina do Fernando é muito elegante, tem essa forma alternativa: d <-data.frame(x1=runif(10),x2=as.factor(c('a','b'))) d d1<-subset(d, d$x2 %in% c("b")) d1 table(d1$x2) # aparece b summary(d1$x2) # aparece b d1$x2<-d1$x2[drop=T] #informação do nível b é eliminada table(d1$x2) summary(d1$x2) Edson Lira Estatístico Manaus-Amazonas Em Quinta-feira, 10 de Abril de 2014 20:32, Rodrigo Muniz <uenf.rodrigo@gmail.com> escreveu: Obrigado Fernando, o problema era exatamente o que você relatou, utilizei o droplevels() e deu certo. Desculpe não ter fornecido o CRM, como eu desconhecia totalmente a origem do problema, achei que fosse algo com o Rstudio ou mesmo ao windows e não aspectos de programação. De qualquer forma agradeço Att... 2014-04-10 18:56 GMT-03:00 FHRB Toledo <fernandohtoledo@gmail.com>: Rodrigo,
Faça o teste...
str(Carbono)
Veja que ele vai ter dizer quantos níveis (levels) há para a sua variável "classe"!
Agora veja também o str(subset(Carbono, Carbono$calsse == 'arenosa'))
Você vai ver que o número de classe continua o mesmo, ou seja, o subset "herda" algumas informações do data.frame de origem!
Uma saída é usar droplevels() que vai retirar os níveis que não são usados do seu subset!
P.S.: Tudo que eu falei é apenas fruto de chute, intuição e algumas pitadas de adivinhação, visto que você não nos forneceu um CMR!
att, FH
2014-04-10 16:49 GMT-05:00 Rodrigo Muniz <uenf.rodrigo@gmail.com>:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês.
Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- Rodrigo A. Muniz Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho) _______________________________________________ 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.
_______________________________________________ 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.
-- Rodrigo A. Muniz Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho) _______________________________________________ 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.

Resolvido. Obrigado a todos que contribuíram dando suas sugestões. Att... 2014-04-10 21:54 GMT-03:00 Edson Lira <edinhoestat@yahoo.com.br>:
Rodrigo, a rotina do Fernando é muito elegante, tem essa forma alternativa:
d <- data.frame(x1=runif(10), x2=as.factor(c('a','b'))) d d1<-subset(d, d$x2 %in% c("b")) d1
table(d1$x2) # aparece b summary(d1$x2) # aparece b
d1$x2<-d1$x2[drop=T] #informação do nível b é eliminada
table(d1$x2) summary(d1$x2)
Edson Lira Estatístico Manaus-Amazonas Em Quinta-feira, 10 de Abril de 2014 20:32, Rodrigo Muniz < uenf.rodrigo@gmail.com> escreveu: Obrigado Fernando, o problema era exatamente o que você relatou, utilizei o droplevels() e deu certo. Desculpe não ter fornecido o CRM, como eu desconhecia totalmente a origem do problema, achei que fosse algo com o Rstudio ou mesmo ao windows e não aspectos de programação. De qualquer forma agradeço Att...
2014-04-10 18:56 GMT-03:00 FHRB Toledo <fernandohtoledo@gmail.com>:
Rodrigo,
Faça o teste...
str(Carbono)
Veja que ele vai ter dizer quantos níveis (levels) há para a sua variável "classe"!
Agora veja também o str(subset(Carbono, Carbono$calsse == 'arenosa'))
Você vai ver que o número de classe continua o mesmo, ou seja, o subset "herda" algumas informações do data.frame de origem!
Uma saída é usar droplevels() que vai retirar os níveis que não são usados do seu subset!
P.S.: Tudo que eu falei é apenas fruto de chute, intuição e algumas pitadas de adivinhação, visto que você não nos forneceu um CMR!
att, FH
2014-04-10 16:49 GMT-05:00 Rodrigo Muniz <uenf.rodrigo@gmail.com>:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.
_______________________________________________ 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.
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.
_______________________________________________ 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.
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)

esse comportamento é o padrão mesmo. Não há nada de errado, apesar de ser nem um pouco o esperado... para retirar os níveis dos fatores que desejamos eliminar, veja a função 'droplevels' segue um exemplo pra tentar ilustrar: ####
d <- data.frame(x1=runif(10), x2=as.factor(c('a','b'))) d x1 x2 1 0.055255652 a 2 0.107406775 b 3 0.042141886 a 4 0.002818245 b 5 0.366778208 a 6 0.651941247 b 7 0.262551836 a 8 0.191663654 b 9 0.233976033 a 10 0.652663319 b
summary( subset(d, x2=='a') ) ########### informação de nivel b ainda permanece x1 x2 Min. :0.04214 a:5 1st Qu.:0.05526 b:0 Median :0.23398 Mean :0.19214 3rd Qu.:0.26255 Max. :0.36678
summary(droplevels(subset(d, x2=='a') ) ) informação de nivel b é eliminada x1 x2 Min. :0.04214 a:5 1st Qu.:0.05526 Median :0.23398 Mean :0.19214 3rd Qu.:0.26255 Max. :0.36678
Em 10/04/2014 18:49, Rodrigo Muniz escreveu:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.

dettached attached Em 10/04/2014 18:49, "Rodrigo Muniz" <uenf.rodrigo@gmail.com> escreveu:
Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço...
-- *Rodrigo A. Muniz* Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho)
_______________________________________________ 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.

Use: arenosa$trat<-arenosa$trat[drop=T} Acho que é isso que você está precisando. [ ]'s. Edson Lira Estatístico Manaus-Amazonas Em Quinta-feira, 10 de Abril de 2014 17:49, Rodrigo Muniz <uenf.rodrigo@gmail.com> escreveu: Caros membros da lista, gostaria mais uma vez de solicitar a ajuda de vocês. Estou tendo um problema, que não sei identificar o que é. O problema é o seguinte: Tenho um data frame 20 colunas chamado "Carbono", onde um das colunas é um fator identificando os tratamentos do experimento, e tenho um outra coluna com as classes texturais do solo. Eu fiz uma análise por classe textural, então extraí um outro data frame chamado "Arenosa", utilizando a função "subset" somente para a classe arenosa, desta forma neste segundo data frame não há todos os tratamentos que estão presentes no data frame "Carbono". Porém qualquer gráfico que eu faça como por exemplo, plot(tapply(arenosa, arenosa$Tratamento, mean), aparece no gráfico todos os tratamentos do data frame "Carbono". Esse é um exemplo, mas tenho tido problemas recorrentes referente a isto. Alguém tem alguma ideia do que possa ser? A título de informação, meu sistema operacional é Windows 7 e eu utilizo o Rstudio. Desde já agradeço... -- Rodrigo A. Muniz Eng. Agrônomo. Ms Produção Vegetal (UENF) Doutorando em Engenharia de Sistemas Agrícolas (ESALQ/USP) Cel (19) 8300-4333 (Pessoal) Tel (19) 3375-1196 (Residêncial) Tel (19) 3447-8537 (Trabalho) _______________________________________________ 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.
participantes (5)
-
Cleber N.Borges
-
Edson Lira
-
FHRB Toledo
-
Marcelo Laia
-
Rodrigo Muniz