I happened to see these:> round(.5, 0)[1] 0> round(1.5, 0)[1] 2> round(2.5, 0)[1] 2> round(3.5, 0)[1] 4> round(4.5, 0)[1] 4 What is the rule here? Should not round(.5, 0) = 1, round(2.5, 0) = 3 etc? Thanks and regards,
?round explicitly says: Note that for rounding off a 5, the IEC 60559 standard is expected to be used, ‘*go to the even digit*’. Therefore round(0.5) is 0 and round(-1.5)is -2. However, this is dependent on OS services and on representation error (since e.g. 0.15 is not represented exactly, the rounding rule applies to the represented number and not to the printed number, and so round(0.15, 1)could be either 0.1 or 0.2). -- Bert On Thu, Jan 3, 2013 at 9:44 AM, Christofer Bogaso < bogaso.christofer@gmail.com> wrote:> I happened to see these: > > > round(.5, 0) > [1] 0 > > round(1.5, 0) > [1] 2 > > round(2.5, 0) > [1] 2 > > round(3.5, 0) > [1] 4 > > round(4.5, 0) > [1] 4 > > > What is the rule here? > > Should not round(.5, 0) = 1, round(2.5, 0) = 3 etc? > > Thanks and regards, > > ______________________________________________ > R-help@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. >-- Bert Gunter Genentech Nonclinical Biostatistics Internal Contact Info: Phone: 467-7374 Website: http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm [[alternative HTML version deleted]]
On Jan 3, 2013, at 11:44 AM, Christofer Bogaso <bogaso.christofer at gmail.com> wrote:> I happened to see these: > >> round(.5, 0) > [1] 0 >> round(1.5, 0) > [1] 2 >> round(2.5, 0) > [1] 2 >> round(3.5, 0) > [1] 4 >> round(4.5, 0) > [1] 4 > > > What is the rule here? > > Should not round(.5, 0) = 1, round(2.5, 0) = 3 etc? > > Thanks and regards,See ?round, eg: "Note that for rounding off a 5, the IEC 60559 standard is expected to be used, ?go to the even digit?. Therefore round(0.5) is 0 and round(-1.5) is -2. However, this is dependent on OS services and on representation error (since e.g. 0.15 is not represented exactly, the rounding rule applies to the represented number and not to the printed number, and so round(0.15, 1) could be either 0.1 or 0.2)." ... Regards, Marc Schwartz
On 03-01-2013, at 18:44, Christofer Bogaso <bogaso.christofer at gmail.com> wrote:> I happened to see these: > >> round(.5, 0) > [1] 0 >> round(1.5, 0) > [1] 2 >> round(2.5, 0) > [1] 2 >> round(3.5, 0) > [1] 4 >> round(4.5, 0) > [1] 4 > > > What is the rule here? > > Should not round(.5, 0) = 1, round(2.5, 0) = 3 etc??round In the Details section you will find: Note that for rounding off a 5, the IEC 60559 standard is expected to be used, ?go to the even digit?. Therefore round(0.5) is 0 and round(-1.5)is -2. However, this is dependent on OS services and on representation error (since e.g. 0.15 is not represented exactly, the rounding rule applies to the represented number and not to the printed number, and so round(0.15, 1) could be either 0.1 or 0.2). Berend