Re: [R] Dividing a vector into ntiles

From: Wiener, Matthew <matthew_wiener_at_merck.com>
Date: Fri 15 Jul 2005 - 22:59:19 EST


You could try using "cut":
> cut(1:9, breaks = 3)

[1] (0.992,3.66] (0.992,3.66] (0.992,3.66] (3.66,6.34] (3.66,6.34] [6] (3.66,6.34] (6.34,9.01] (6.34,9.01] (6.34,9.01] Levels: (0.992,3.66] (3.66,6.34] (6.34,9.01]
>

Quantile is another possible solution to get break points:
> quantile(1:9, p = c(0, .33, .66, 1))

  0% 33% 66% 100%
1.00 3.64 6.28 9.00
>

You could use rounding if you want the integers, or use the given cutpoints.

Hope this helps,

Matt Wiener

-----Original Message-----
From: r-help-bounces@stat.math.ethz.ch
[mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of John Sorkin Sent: Friday, July 15, 2005 8:48 AM
To: r-help@stat.math.ethz.ch
Subject: [R] Dividing a vector into ntiles

R 2.1.1
Win 2k  

Would someone suggest a method (or methods) that can be used to determine ntile cutpoints of a vector, i.e. to determine values that can be used to divide a vector into thirds such as 0-33 centile, 34-66 centile, 67-100 centile. If for example I had a vector: 1,2,3,4,5,6,7,8,9
and wanted to divide the vector into thirds I would have cut-points of 3, and 6.
Thanks,
John  

John Sorkin M.D., Ph.D.
Chief, Biostatistics and Informatics
Baltimore VA Medical Center GRECC and
University of Maryland School of Medicine Claude Pepper OAIC  

University of Maryland School of Medicine Division of Gerontology
Baltimore VA Medical Center
10 North Greene Street

GRECC (BT/18/GR)
Baltimore, MD 21201-1524  

410-605-7119
-- NOTE NEW EMAIL ADDRESS:
jsorkin@grecc.umaryland.edu

        [[alternative HTML version deleted]]



R-help@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

R-help@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 Received on Fri Jul 15 23:05:44 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:33:45 EST