[R] Help in getting info from a DataFrame

ADias diasandre at gmail.com
Mon Jan 31 09:44:00 CET 2011



David Winsemius wrote:
> 
> 
> On Jan 30, 2011, at 5:27 PM, ADias wrote:
> 
>> dados<- 
>> data 
>> .frame 
>> (Store 
>> = 
>> c 
>> ("Setubal 
>> ","lx 
>> ","Aveiro 
>> ","Coimbra 
>> ","Aveiro","Evora","Aveiro","Coimbra","Setubal"),Prod=c("Bloco
>> Desenho","Bloco
>> Desenho 
>> ","Tinteiro 
>> ","Régua 
>> ","Lapiseira 
>> ","Regua 
>> ","Tinteiro","Lapiseira","Lapiseira"),qtd=c(2,1,2,1,3,1,1,1,1))
> 
> 
> See if this is a more useful approach:
> 
>  > lapsales <- dados[dados$Prod=="Lapiseira",  ]
>  > lapsales[which.max(lapsales[ , "qtd" ]), "Store"]
> [1] Aveiro
> Levels: Aveiro Coimbra Evora lx Setubal
> 
> -- 
> David Winsemius, MD
> West Hartford, CT
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
> 
> 
Hi,

thank you for the help.

Two questions I would like to make.

Suppose I have put your answer on an object like this:

r<-lapsales[which.max(lapsales[ , "qtd" ]), "Store"]

so 
>r
[1] Aveiro
Levels: Aveiro Coimbra Evora lx Setubal

and suppoese I wish to add this year result to previous years results:

results<-c("Lx","Setubal")
so I did:

results<-c(results,r)

and what I get is:

> results
[1] "Lx"      "Setubal" "1"   

why "1" and not "Aveiro"?

Second question is:

> lapsales
    Store      Prod qtd
5  Aveiro Lapiseira   3
8 Coimbra Lapiseira   1
9 Setubal Lapiseira   1
> lapsales[max(lapsales$qtd),"Store"]
[1] Setubal
Levels: Aveiro Coimbra Evora lx Setubal

why Setubal and not Aveiro?

many thanks
AD
-- 
View this message in context: http://r.789695.n4.nabble.com/Help-in-getting-info-from-a-DataFrame-tp3247740p3248276.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list