cutで微妙にはまる

以下のような数値列があるとする。

smp <- seq(62.5, 110, by = 2.5)
[1]  62.5  65.0  67.5  70.0  72.5  75.0  77.5  80.0  82.5  85.0  87.5  90.0  92.5  95.0  97.5 100.0 102.5 105.0 107.5 110.0

これをcut関数で上記数値列と同じ幅で区間分割してみる。
すると以下のようになり、100以上がなんだかおかしい。

>table(cut(smp, breaks = cseq(62.5, 110, by = 2.5), right = FALSE))

[62.5,65)  [65,67.5)  [67.5,70)  [70,72.5)  [72.5,75)  [75,77.5)  [77.5,80)  [80,82.5)  [82.5,85)  [85,87.5)  [87.5,90)  [90,92.5)  [92.5,95) 
         1          1          1          1          1          1          1          1          1          1          1          1          1 
 [95,97.5) [97.5,100)  [100,102)  [102,105)  [105,108)  [108,110) 
         1          1          1          1          1          1 

これは数値の桁数を指定してやれば望みのものが得られる。

> table(cut(smp,breaks=c(-Inf,seq(62.5,110,by=2.5),Inf),dig.lab=4))

(-Inf,62.5]   (62.5,65]   (65,67.5]   (67.5,70]   (70,72.5]   (72.5,75]   (75,77.5]   (77.5,80]   (80,82.5]   (82.5,85]   (85,87.5]   (87.5,90]   (90,92.5]   (92.5,95]   (95,97.5] 
          1           1           1           1           1           1           1           1           1           1           1           1           1           1           1 
 (97.5,100] (100,102.5] (102.5,105] (105,107.5] (107.5,110]  (110, Inf] 
          1           1           1           1           1           0