> myvector <- c(1, 2, 3, 2, 1, 3, 5) > myf <- factor(myvector, levels=1:5) > table(myf) myf 1 2 3 4 5 2 2 2 0 1 > cumsum(table(myf)) 1 2 3 4 5 2 4 6 6 7
Nicolas Perot a écrit : >Hello, > >Let's assume I have a vector of integers : > > myvector <- c(1, 2, 3, 2, 1, 3, 5) > >My purpose is to obtain the cumulative distribution of these numerical >data, i.e. something like : > >value nb_occur. ><=1 2 ><=2 4 ><=3 6 ><=4 6 ><=5 7 > >For this, I create a table with ; > > mytable <- table(myvector) > >1 2 3 5 >2 2 2 1 > >However, table() returns an array of integers, mytable[4] returns the >occurence number of the "5" item, which makes this table hard to index. >I would prefer to have a data structure where mytable[4] could return 0, >as there is no "4" in my vector. > >table() may not be the proper way to do it. > >For the moment, I use a loop which scans the vector from its lowest >value to its highest, and counts the number of times each value appears. > >Is there a built-in function, or a table() option to do such a task ? > >Thanks. > >Regards, >Nicolas > >______________________________________________ >[email protected] mailing list >https://stat.ethz.ch/mailman/listinfo/r-help >PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > > > ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
