[R] How to add elements to a table

bioinfonews at pt.lu bioinfonews at pt.lu
Fri Jun 29 11:23:55 CEST 2007


Thanks a lot! Wow, I know why I love R, things are so incredibly easy  
with R (once you know how ;-) )

Moreover I've found messages in the archive showing how to make plot  
draw as many ticks as I've got years, so everything is OK.

Thanks for the help,

Anne-Marie


Quoting Jacques VESLOT <Jacques.Veslot at avignon.inra.fr>:

>> z <- read.table("clipboard")
>> z
>    V1 V2
> 1 1990 20
> 2 1991 15
> 3 1995 17
> 4 1997  9
> 5 1998 10
> 6 1999 11
> 7 2000  5
>> zz <- merge(data.frame(V1=1990:2000), z, by="V1", all.x=T)
>> plot(zz, type="l")
>
> Jacques VESLOT
>
> INRA - Biostatistique & Processus Spatiaux
> Site Agroparc 84914 Avignon Cedex 9, France
>
> Tel: +33 (0) 4 32 72 21 58
> Fax: +33 (0) 4 32 72 21 84
>
>
>
> bioinfonews at pt.lu a écrit :
>> Hi,
>>
>> I've been using R for a few weeks now, but consider myself still a   
>>  newbie, especially in what concerns the basics of data handling in  
>> R.
>>
>> My situation is this:
>> I read in data from a database using RODBC, and then use "table" to  
>>   produce a table of "counts per years", table which I give to   
>> "plot".  All is well, as long as there are no gaps in the years   
>> sequence, but  now I have the following result (example):
>>
>> 1990 20
>> 1991 15
>> 1995 17
>> 1997  9
>> 1998 10
>> 1999 11
>> 2000  5
>>
>> The "plot" function is quite intelligent, in the sense that it   
>> draws  appropriate gaps in the x-axis between years, but not   
>> intelligent  enough to interrupt the data line during the gap. This  
>>  gives the  impression that, although no year is marked on the   
>> x-axis between 1991 and 1995, there has been data for this period,   
>> which is not correct.
>>
>> What I tried to do is convert the table to a matrix, insert zeros   
>> for  the missing years using rbind and cbind, and convert the   
>> result back  to table. But the structure of this resulting table is  
>>  not the same as for the originating table, so that I need to pass   
>> "tab[1,]" to "plot".  It's no longer a contingency table in fact.
>>
>> I've seen in the mailing list archives that there is an issue on   
>> using "table"s when matrixes or other structures would be more   
>> appropriate.
>>
>> I like the "table", because "plot" automatically plots the    
>> corresponding years on the x-axis, which I find less error-prone   
>> than  adding the tick labels later by hand, i.e. the association   
>> between  years and counts is stronger.
>>
>> Also, as I tabulate counts of cases per gender, or per age   
>> categories, I think a contingency table is the right thing to use,   
>> isn't it?
>>
>> I'd be glad on any advice about what would be the best data   
>> structure  to handle my situation, and I'd also like to know how I   
>> could  automagically check a list of "year, cases" rows against a   
>> fixed list  of years, insert zero or "NA" values for missing years,  
>>  and get an  easily usable result that I can forward to "plot" or   
>> "barplot".
>>
>> Thanks a lot in advance,
>>
>> Anne-Marie
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch 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.
>>



More information about the R-help mailing list