@r-universe/webr 2023.6.11 → 2023.6.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1649) hide show
  1. package/dist/R.bin.data +35733 -74
  2. package/dist/R.bin.js +1756 -0
  3. package/dist/R.bin.wasm +0 -0
  4. package/dist/esbuild.d.ts +1 -0
  5. package/dist/libRblas.so +0 -0
  6. package/dist/libRlapack.so +0 -0
  7. package/dist/repl/fstree.d.ts +57 -0
  8. package/dist/repl/repl.d.ts +1 -0
  9. package/dist/tests/packages/webr.test.d.ts +1 -0
  10. package/dist/tests/webR/console.test.d.ts +1 -0
  11. package/dist/tests/webR/proxy.test.d.ts +1 -0
  12. package/dist/tests/webR/robj.test.d.ts +1 -0
  13. package/dist/tests/webR/utils.test.d.ts +1 -0
  14. package/dist/tests/webR/webr-main.test.d.ts +1 -0
  15. package/dist/tests/webR/webr-r.test.d.ts +1 -0
  16. package/dist/tests/webR/webr-worker.test.d.ts +1 -0
  17. package/dist/vfs/usr/lib/R/doc/AUTHORS +39 -0
  18. package/dist/vfs/usr/lib/R/doc/BioC_mirrors.csv +17 -0
  19. package/dist/vfs/usr/lib/R/doc/COPYING +340 -0
  20. package/dist/vfs/usr/lib/R/doc/COPYRIGHTS +774 -0
  21. package/dist/vfs/usr/lib/R/doc/CRAN_mirrors.csv +105 -0
  22. package/dist/vfs/usr/lib/R/doc/FAQ +2653 -0
  23. package/dist/vfs/usr/lib/R/doc/KEYWORDS +87 -0
  24. package/dist/vfs/usr/lib/R/doc/KEYWORDS.db +71 -0
  25. package/dist/vfs/usr/lib/R/doc/NEWS +3538 -0
  26. package/dist/vfs/usr/lib/R/doc/NEWS.0 +2825 -0
  27. package/dist/vfs/usr/lib/R/doc/NEWS.1 +8108 -0
  28. package/dist/vfs/usr/lib/R/doc/NEWS.2 +16534 -0
  29. package/dist/vfs/usr/lib/R/doc/NEWS.2.rds +0 -0
  30. package/dist/vfs/usr/lib/R/doc/NEWS.3 +7840 -0
  31. package/dist/vfs/usr/lib/R/doc/NEWS.3.rds +0 -0
  32. package/dist/vfs/usr/lib/R/doc/NEWS.pdf +0 -0
  33. package/dist/vfs/usr/lib/R/doc/NEWS.rds +0 -0
  34. package/dist/vfs/usr/lib/R/doc/RESOURCES +44 -0
  35. package/dist/vfs/usr/lib/R/doc/THANKS +78 -0
  36. package/dist/vfs/usr/lib/R/doc/html/NEWS.2.html +9004 -0
  37. package/dist/vfs/usr/lib/R/doc/html/NEWS.3.html +11328 -0
  38. package/dist/vfs/usr/lib/R/doc/html/NEWS.html +5151 -0
  39. package/dist/vfs/usr/lib/R/doc/html/R.css +130 -0
  40. package/dist/vfs/usr/lib/R/doc/html/Rlogo.pdf +0 -0
  41. package/dist/vfs/usr/lib/R/doc/html/Rlogo.svg +33 -0
  42. package/dist/vfs/usr/lib/R/doc/html/Search.html +27 -0
  43. package/dist/vfs/usr/lib/R/doc/html/SearchOn.html +200 -0
  44. package/dist/vfs/usr/lib/R/doc/html/about.html +38 -0
  45. package/dist/vfs/usr/lib/R/doc/html/favicon.ico +0 -0
  46. package/dist/vfs/usr/lib/R/doc/html/index.html +79 -0
  47. package/dist/vfs/usr/lib/R/doc/html/katex/LICENSE +24 -0
  48. package/dist/vfs/usr/lib/R/doc/html/katex/README.md +119 -0
  49. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
  50. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
  51. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  52. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  53. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  54. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  55. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  56. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  57. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  58. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  59. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  60. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  61. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  62. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  63. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  64. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
  65. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Bold.woff +0 -0
  66. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  67. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  68. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  69. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  70. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
  71. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Italic.woff +0 -0
  72. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  73. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
  74. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Regular.woff +0 -0
  75. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  76. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  77. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  78. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  79. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
  80. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-Italic.woff +0 -0
  81. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  82. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  83. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  84. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  85. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  86. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  87. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  88. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  89. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  90. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  91. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
  92. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Script-Regular.woff +0 -0
  93. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  94. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
  95. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
  96. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  97. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
  98. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
  99. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  100. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
  101. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
  102. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  103. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
  104. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
  105. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  106. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  107. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  108. package/dist/vfs/usr/lib/R/doc/html/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  109. package/dist/vfs/usr/lib/R/doc/html/katex/katex.css +1079 -0
  110. package/dist/vfs/usr/lib/R/doc/html/katex/katex.js +18456 -0
  111. package/dist/vfs/usr/lib/R/doc/html/katex-check.js +13 -0
  112. package/dist/vfs/usr/lib/R/doc/html/katex-config.js +17 -0
  113. package/dist/vfs/usr/lib/R/doc/html/left.jpg +0 -0
  114. package/dist/vfs/usr/lib/R/doc/html/logo.jpg +0 -0
  115. package/dist/vfs/usr/lib/R/doc/html/mathjax-config.js +23 -0
  116. package/dist/vfs/usr/lib/R/doc/html/packages-head-utf8.html +17 -0
  117. package/dist/vfs/usr/lib/R/doc/html/packages.html +51 -0
  118. package/dist/vfs/usr/lib/R/doc/html/prism.css +235 -0
  119. package/dist/vfs/usr/lib/R/doc/html/prism.js +1495 -0
  120. package/dist/vfs/usr/lib/R/doc/html/resources.html +235 -0
  121. package/dist/vfs/usr/lib/R/doc/html/right.jpg +0 -0
  122. package/dist/vfs/usr/lib/R/doc/html/up.jpg +0 -0
  123. package/dist/vfs/usr/lib/R/doc/manual/images/QQ.png +0 -0
  124. package/dist/vfs/usr/lib/R/doc/manual/images/ecdf.png +0 -0
  125. package/dist/vfs/usr/lib/R/doc/manual/images/fig11.png +0 -0
  126. package/dist/vfs/usr/lib/R/doc/manual/images/fig12.png +0 -0
  127. package/dist/vfs/usr/lib/R/doc/manual/images/hist.png +0 -0
  128. package/dist/vfs/usr/lib/R/doc/manual/images/ice.png +0 -0
  129. package/dist/vfs/usr/lib/R/library/base/demo/error.catching.R +101 -0
  130. package/dist/vfs/usr/lib/R/library/base/demo/is.things.R +143 -0
  131. package/dist/vfs/usr/lib/R/library/base/demo/recursion.R +82 -0
  132. package/dist/vfs/usr/lib/R/library/base/demo/scoping.R +50 -0
  133. package/dist/vfs/usr/lib/R/library/base/help/AnIndex +1709 -0
  134. package/dist/vfs/usr/lib/R/library/base/help/aliases.rds +0 -0
  135. package/dist/vfs/usr/lib/R/library/base/help/base.rdb +0 -0
  136. package/dist/vfs/usr/lib/R/library/base/help/base.rdx +0 -0
  137. package/dist/vfs/usr/lib/R/library/base/help/paths.rds +0 -0
  138. package/dist/vfs/usr/lib/R/library/base/html/00Index.html +2754 -0
  139. package/dist/vfs/usr/lib/R/library/base/html/R.css +130 -0
  140. package/dist/vfs/usr/lib/R/library/compiler/help/AnIndex +9 -0
  141. package/dist/vfs/usr/lib/R/library/compiler/help/aliases.rds +0 -0
  142. package/dist/vfs/usr/lib/R/library/compiler/help/compiler.rdb +0 -0
  143. package/dist/vfs/usr/lib/R/library/compiler/help/compiler.rdx +0 -0
  144. package/dist/vfs/usr/lib/R/library/compiler/help/paths.rds +0 -0
  145. package/dist/vfs/usr/lib/R/library/compiler/html/00Index.html +43 -0
  146. package/dist/vfs/usr/lib/R/library/compiler/html/R.css +130 -0
  147. package/dist/vfs/usr/lib/R/library/compiler/tests/assign.R +152 -0
  148. package/dist/vfs/usr/lib/R/library/compiler/tests/basics.R +104 -0
  149. package/dist/vfs/usr/lib/R/library/compiler/tests/const.R +65 -0
  150. package/dist/vfs/usr/lib/R/library/compiler/tests/curexpr.R +96 -0
  151. package/dist/vfs/usr/lib/R/library/compiler/tests/envir.R +90 -0
  152. package/dist/vfs/usr/lib/R/library/compiler/tests/jit.R +16 -0
  153. package/dist/vfs/usr/lib/R/library/compiler/tests/loop.R +26 -0
  154. package/dist/vfs/usr/lib/R/library/compiler/tests/srcref.R +77 -0
  155. package/dist/vfs/usr/lib/R/library/compiler/tests/switch.R +98 -0
  156. package/dist/vfs/usr/lib/R/library/compiler/tests/vischk.R +121 -0
  157. package/dist/vfs/usr/lib/R/library/datasets/help/AnIndex +109 -0
  158. package/dist/vfs/usr/lib/R/library/datasets/help/aliases.rds +0 -0
  159. package/dist/vfs/usr/lib/R/library/datasets/help/datasets.rdb +0 -0
  160. package/dist/vfs/usr/lib/R/library/datasets/help/datasets.rdx +0 -0
  161. package/dist/vfs/usr/lib/R/library/datasets/help/paths.rds +0 -0
  162. package/dist/vfs/usr/lib/R/library/datasets/html/00Index.html +373 -0
  163. package/dist/vfs/usr/lib/R/library/datasets/html/R.css +130 -0
  164. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-Bold.afm.gz +0 -0
  165. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-BoldItalic.afm.gz +0 -0
  166. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-Italic.afm.gz +0 -0
  167. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT.afm.gz +0 -0
  168. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_boldx_10.afm.gz +0 -0
  169. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_boldx_italic_10.afm.gz +0 -0
  170. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_italic_10.afm.gz +0 -0
  171. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_regular_10.afm.gz +0 -0
  172. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_symbol_10.afm.gz +0 -0
  173. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-Bold.afm.gz +0 -0
  174. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-BoldOblique.afm.gz +0 -0
  175. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-Oblique.afm.gz +0 -0
  176. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier.afm.gz +0 -0
  177. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-Bold.afm.gz +0 -0
  178. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-BoldOblique.afm.gz +0 -0
  179. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-Oblique.afm.gz +0 -0
  180. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica.afm.gz +0 -0
  181. package/dist/vfs/usr/lib/R/library/grDevices/afm/MustRead.html +20 -0
  182. package/dist/vfs/usr/lib/R/library/grDevices/afm/README +21 -0
  183. package/dist/vfs/usr/lib/R/library/grDevices/afm/Symbol.afm.gz +0 -0
  184. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Bold.afm.gz +0 -0
  185. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-BoldItalic.afm.gz +0 -0
  186. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Italic.afm.gz +0 -0
  187. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Roman.afm.gz +0 -0
  188. package/dist/vfs/usr/lib/R/library/grDevices/afm/ZapfDingbats.afm.gz +0 -0
  189. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010013l.afm.gz +0 -0
  190. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010015l.afm.gz +0 -0
  191. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010033l.afm.gz +0 -0
  192. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010035l.afm.gz +0 -0
  193. package/dist/vfs/usr/lib/R/library/grDevices/afm/agd_____.afm.gz +0 -0
  194. package/dist/vfs/usr/lib/R/library/grDevices/afm/agdo____.afm.gz +0 -0
  195. package/dist/vfs/usr/lib/R/library/grDevices/afm/agw_____.afm.gz +0 -0
  196. package/dist/vfs/usr/lib/R/library/grDevices/afm/agwo____.afm.gz +0 -0
  197. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018012l.afm.gz +0 -0
  198. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018015l.afm.gz +0 -0
  199. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018032l.afm.gz +0 -0
  200. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018035l.afm.gz +0 -0
  201. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkd_____.afm.gz +0 -0
  202. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkdi____.afm.gz +0 -0
  203. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkl_____.afm.gz +0 -0
  204. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkli____.afm.gz +0 -0
  205. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059013l.afm.gz +0 -0
  206. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059016l.afm.gz +0 -0
  207. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059033l.afm.gz +0 -0
  208. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059036l.afm.gz +0 -0
  209. package/dist/vfs/usr/lib/R/library/grDevices/afm/cmbxti10.afm.gz +0 -0
  210. package/dist/vfs/usr/lib/R/library/grDevices/afm/cmti10.afm.gz +0 -0
  211. package/dist/vfs/usr/lib/R/library/grDevices/afm/cob_____.afm.gz +0 -0
  212. package/dist/vfs/usr/lib/R/library/grDevices/afm/cobo____.afm.gz +0 -0
  213. package/dist/vfs/usr/lib/R/library/grDevices/afm/com_____.afm.gz +0 -0
  214. package/dist/vfs/usr/lib/R/library/grDevices/afm/coo_____.afm.gz +0 -0
  215. package/dist/vfs/usr/lib/R/library/grDevices/afm/hv______.afm.gz +0 -0
  216. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvb_____.afm.gz +0 -0
  217. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvbo____.afm.gz +0 -0
  218. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvn_____.afm.gz +0 -0
  219. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvnb____.afm.gz +0 -0
  220. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvnbo___.afm.gz +0 -0
  221. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvno____.afm.gz +0 -0
  222. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvo_____.afm.gz +0 -0
  223. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019003l.afm.gz +0 -0
  224. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019004l.afm.gz +0 -0
  225. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019023l.afm.gz +0 -0
  226. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019024l.afm.gz +0 -0
  227. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019043l.afm.gz +0 -0
  228. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019044l.afm.gz +0 -0
  229. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019063l.afm.gz +0 -0
  230. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019064l.afm.gz +0 -0
  231. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021003l.afm.gz +0 -0
  232. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021004l.afm.gz +0 -0
  233. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021023l.afm.gz +0 -0
  234. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021024l.afm.gz +0 -0
  235. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022003l.afm.gz +0 -0
  236. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022004l.afm.gz +0 -0
  237. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022023l.afm.gz +0 -0
  238. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022024l.afm.gz +0 -0
  239. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncb_____.afm.gz +0 -0
  240. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncbi____.afm.gz +0 -0
  241. package/dist/vfs/usr/lib/R/library/grDevices/afm/nci_____.afm.gz +0 -0
  242. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncr_____.afm.gz +0 -0
  243. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052003l.afm.gz +0 -0
  244. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052004l.afm.gz +0 -0
  245. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052023l.afm.gz +0 -0
  246. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052024l.afm.gz +0 -0
  247. package/dist/vfs/usr/lib/R/library/grDevices/afm/pob_____.afm.gz +0 -0
  248. package/dist/vfs/usr/lib/R/library/grDevices/afm/pobi____.afm.gz +0 -0
  249. package/dist/vfs/usr/lib/R/library/grDevices/afm/poi_____.afm.gz +0 -0
  250. package/dist/vfs/usr/lib/R/library/grDevices/afm/por_____.afm.gz +0 -0
  251. package/dist/vfs/usr/lib/R/library/grDevices/afm/s050000l.afm.gz +0 -0
  252. package/dist/vfs/usr/lib/R/library/grDevices/afm/sy______.afm.gz +0 -0
  253. package/dist/vfs/usr/lib/R/library/grDevices/afm/tib_____.afm.gz +0 -0
  254. package/dist/vfs/usr/lib/R/library/grDevices/afm/tibi____.afm.gz +0 -0
  255. package/dist/vfs/usr/lib/R/library/grDevices/afm/tii_____.afm.gz +0 -0
  256. package/dist/vfs/usr/lib/R/library/grDevices/afm/tir_____.afm.gz +0 -0
  257. package/dist/vfs/usr/lib/R/library/grDevices/demo/colors.R +108 -0
  258. package/dist/vfs/usr/lib/R/library/grDevices/demo/hclColors.R +63 -0
  259. package/dist/vfs/usr/lib/R/library/grDevices/enc/AdobeStd.enc +37 -0
  260. package/dist/vfs/usr/lib/R/library/grDevices/enc/AdobeSym.enc +42 -0
  261. package/dist/vfs/usr/lib/R/library/grDevices/enc/CP1250.enc +36 -0
  262. package/dist/vfs/usr/lib/R/library/grDevices/enc/CP1251.enc +37 -0
  263. package/dist/vfs/usr/lib/R/library/grDevices/enc/CP1253.enc +37 -0
  264. package/dist/vfs/usr/lib/R/library/grDevices/enc/CP1257.enc +36 -0
  265. package/dist/vfs/usr/lib/R/library/grDevices/enc/Cyrillic.enc +40 -0
  266. package/dist/vfs/usr/lib/R/library/grDevices/enc/Greek.enc +38 -0
  267. package/dist/vfs/usr/lib/R/library/grDevices/enc/ISOLatin1.enc +39 -0
  268. package/dist/vfs/usr/lib/R/library/grDevices/enc/ISOLatin2.enc +40 -0
  269. package/dist/vfs/usr/lib/R/library/grDevices/enc/ISOLatin7.enc +40 -0
  270. package/dist/vfs/usr/lib/R/library/grDevices/enc/ISOLatin9.enc +39 -0
  271. package/dist/vfs/usr/lib/R/library/grDevices/enc/KOI8-R.enc +39 -0
  272. package/dist/vfs/usr/lib/R/library/grDevices/enc/KOI8-U.enc +39 -0
  273. package/dist/vfs/usr/lib/R/library/grDevices/enc/MacRoman.enc +39 -0
  274. package/dist/vfs/usr/lib/R/library/grDevices/enc/PDFDoc.enc +39 -0
  275. package/dist/vfs/usr/lib/R/library/grDevices/enc/TeXtext.enc +39 -0
  276. package/dist/vfs/usr/lib/R/library/grDevices/enc/WinAnsi.enc +40 -0
  277. package/dist/vfs/usr/lib/R/library/grDevices/fonts/Montserrat/static/Montserrat-BoldItalic.ttf +0 -0
  278. package/dist/vfs/usr/lib/R/library/grDevices/fonts/Montserrat/static/Montserrat-Medium.ttf +0 -0
  279. package/dist/vfs/usr/lib/R/library/grDevices/fonts/Roboto/LICENSE.txt +202 -0
  280. package/dist/vfs/usr/lib/R/library/grDevices/fonts/Roboto/Roboto-Medium.ttf +0 -0
  281. package/dist/vfs/usr/lib/R/library/grDevices/help/AnIndex +192 -0
  282. package/dist/vfs/usr/lib/R/library/grDevices/help/aliases.rds +0 -0
  283. package/dist/vfs/usr/lib/R/library/grDevices/help/grDevices.rdb +0 -0
  284. package/dist/vfs/usr/lib/R/library/grDevices/help/grDevices.rdx +0 -0
  285. package/dist/vfs/usr/lib/R/library/grDevices/help/paths.rds +0 -0
  286. package/dist/vfs/usr/lib/R/library/grDevices/html/00Index.html +520 -0
  287. package/dist/vfs/usr/lib/R/library/grDevices/html/R.css +130 -0
  288. package/dist/vfs/usr/lib/R/library/grDevices/libs/grDevices.so +0 -0
  289. package/dist/vfs/usr/lib/R/library/grDevices/tests/convertColor-tests.R +47 -0
  290. package/dist/vfs/usr/lib/R/library/grDevices/tests/grDev-tsts.R +7 -0
  291. package/dist/vfs/usr/lib/R/library/grDevices/tests/palettes-tests.R +58 -0
  292. package/dist/vfs/usr/lib/R/library/grDevices/tests/ps-tests.R +39 -0
  293. package/dist/vfs/usr/lib/R/library/grDevices/tests/ps-tests.Rout.save +98 -0
  294. package/dist/vfs/usr/lib/R/library/grDevices/tests/saved-recordPlot.R +36 -0
  295. package/dist/vfs/usr/lib/R/library/grDevices/tests/xfig-tests.R +84 -0
  296. package/dist/vfs/usr/lib/R/library/grDevices/tests/xfig-tests.Rout.save +105 -0
  297. package/dist/vfs/usr/lib/R/library/graphics/demo/Hershey.R +394 -0
  298. package/dist/vfs/usr/lib/R/library/graphics/demo/Japanese.R +716 -0
  299. package/dist/vfs/usr/lib/R/library/graphics/demo/graphics.R +145 -0
  300. package/dist/vfs/usr/lib/R/library/graphics/demo/image.R +37 -0
  301. package/dist/vfs/usr/lib/R/library/graphics/demo/persp.R +86 -0
  302. package/dist/vfs/usr/lib/R/library/graphics/demo/plotmath.R +197 -0
  303. package/dist/vfs/usr/lib/R/library/graphics/help/AnIndex +130 -0
  304. package/dist/vfs/usr/lib/R/library/graphics/help/aliases.rds +0 -0
  305. package/dist/vfs/usr/lib/R/library/graphics/help/figures/mai.pdf +0 -0
  306. package/dist/vfs/usr/lib/R/library/graphics/help/figures/mai.png +0 -0
  307. package/dist/vfs/usr/lib/R/library/graphics/help/figures/oma.pdf +0 -0
  308. package/dist/vfs/usr/lib/R/library/graphics/help/figures/oma.png +0 -0
  309. package/dist/vfs/usr/lib/R/library/graphics/help/figures/pch.pdf +0 -0
  310. package/dist/vfs/usr/lib/R/library/graphics/help/figures/pch.png +0 -0
  311. package/dist/vfs/usr/lib/R/library/graphics/help/figures/pch.svg +185 -0
  312. package/dist/vfs/usr/lib/R/library/graphics/help/graphics.rdb +0 -0
  313. package/dist/vfs/usr/lib/R/library/graphics/help/graphics.rdx +0 -0
  314. package/dist/vfs/usr/lib/R/library/graphics/help/paths.rds +0 -0
  315. package/dist/vfs/usr/lib/R/library/graphics/html/00Index.html +222 -0
  316. package/dist/vfs/usr/lib/R/library/graphics/html/R.css +130 -0
  317. package/dist/vfs/usr/lib/R/library/grid/doc/DivByZero.txt +50 -0
  318. package/dist/vfs/usr/lib/R/library/grid/doc/changes.txt +1714 -0
  319. package/dist/vfs/usr/lib/R/library/grid/doc/displaylist.pdf +0 -0
  320. package/dist/vfs/usr/lib/R/library/grid/doc/frame.pdf +0 -0
  321. package/dist/vfs/usr/lib/R/library/grid/doc/grid.pdf +0 -0
  322. package/dist/vfs/usr/lib/R/library/grid/doc/grobs.pdf +0 -0
  323. package/dist/vfs/usr/lib/R/library/grid/doc/interactive.pdf +0 -0
  324. package/dist/vfs/usr/lib/R/library/grid/doc/locndimn.pdf +0 -0
  325. package/dist/vfs/usr/lib/R/library/grid/doc/moveline.pdf +0 -0
  326. package/dist/vfs/usr/lib/R/library/grid/doc/nonfinite.pdf +0 -0
  327. package/dist/vfs/usr/lib/R/library/grid/doc/plotexample.pdf +0 -0
  328. package/dist/vfs/usr/lib/R/library/grid/doc/rotated.pdf +0 -0
  329. package/dist/vfs/usr/lib/R/library/grid/doc/saveload.pdf +0 -0
  330. package/dist/vfs/usr/lib/R/library/grid/doc/sharing.pdf +0 -0
  331. package/dist/vfs/usr/lib/R/library/grid/doc/viewports.pdf +0 -0
  332. package/dist/vfs/usr/lib/R/library/grid/help/AnIndex +269 -0
  333. package/dist/vfs/usr/lib/R/library/grid/help/aliases.rds +0 -0
  334. package/dist/vfs/usr/lib/R/library/grid/help/grid.rdb +0 -0
  335. package/dist/vfs/usr/lib/R/library/grid/help/grid.rdx +0 -0
  336. package/dist/vfs/usr/lib/R/library/grid/help/paths.rds +0 -0
  337. package/dist/vfs/usr/lib/R/library/grid/html/00Index.html +648 -0
  338. package/dist/vfs/usr/lib/R/library/grid/html/R.css +130 -0
  339. package/dist/vfs/usr/lib/R/library/grid/tests/bugs.R +30 -0
  340. package/dist/vfs/usr/lib/R/library/grid/tests/clippaths.R +418 -0
  341. package/dist/vfs/usr/lib/R/library/grid/tests/compositing.R +107 -0
  342. package/dist/vfs/usr/lib/R/library/grid/tests/coords.R +598 -0
  343. package/dist/vfs/usr/lib/R/library/grid/tests/glyphs.R +325 -0
  344. package/dist/vfs/usr/lib/R/library/grid/tests/grep.R +49 -0
  345. package/dist/vfs/usr/lib/R/library/grid/tests/grep.Rout.save +100 -0
  346. package/dist/vfs/usr/lib/R/library/grid/tests/groups.R +549 -0
  347. package/dist/vfs/usr/lib/R/library/grid/tests/masks.R +417 -0
  348. package/dist/vfs/usr/lib/R/library/grid/tests/nesting.R +113 -0
  349. package/dist/vfs/usr/lib/R/library/grid/tests/paths.R +241 -0
  350. package/dist/vfs/usr/lib/R/library/grid/tests/patterns.R +1435 -0
  351. package/dist/vfs/usr/lib/R/library/grid/tests/reg.R +433 -0
  352. package/dist/vfs/usr/lib/R/library/grid/tests/testls.R +158 -0
  353. package/dist/vfs/usr/lib/R/library/grid/tests/testls.Rout.save +343 -0
  354. package/dist/vfs/usr/lib/R/library/grid/tests/units.R +180 -0
  355. package/dist/vfs/usr/lib/R/library/methods/help/AnIndex +483 -0
  356. package/dist/vfs/usr/lib/R/library/methods/help/aliases.rds +0 -0
  357. package/dist/vfs/usr/lib/R/library/methods/help/methods.rdb +0 -0
  358. package/dist/vfs/usr/lib/R/library/methods/help/methods.rdx +0 -0
  359. package/dist/vfs/usr/lib/R/library/methods/help/paths.rds +0 -0
  360. package/dist/vfs/usr/lib/R/library/methods/html/00Index.html +727 -0
  361. package/dist/vfs/usr/lib/R/library/methods/html/R.css +130 -0
  362. package/dist/vfs/usr/lib/R/library/methods/tests/S3.R +29 -0
  363. package/dist/vfs/usr/lib/R/library/methods/tests/basicRefClass.R +530 -0
  364. package/dist/vfs/usr/lib/R/library/methods/tests/duplicateClass.R +35 -0
  365. package/dist/vfs/usr/lib/R/library/methods/tests/envRefClass.R +18 -0
  366. package/dist/vfs/usr/lib/R/library/methods/tests/fieldAssignments.R +30 -0
  367. package/dist/vfs/usr/lib/R/library/methods/tests/mixinInitialize.R +86 -0
  368. package/dist/vfs/usr/lib/R/library/methods/tests/namesAndSlots.R +18 -0
  369. package/dist/vfs/usr/lib/R/library/methods/tests/nextWithDots.R +21 -0
  370. package/dist/vfs/usr/lib/R/library/methods/tests/refClassExample.R +51 -0
  371. package/dist/vfs/usr/lib/R/library/methods/tests/testConditionalIs.R +38 -0
  372. package/dist/vfs/usr/lib/R/library/methods/tests/testGroupGeneric.R +83 -0
  373. package/dist/vfs/usr/lib/R/library/methods/tests/testIs.R +61 -0
  374. package/dist/vfs/usr/lib/R/library/parallel/DESCRIPTION +16 -0
  375. package/dist/vfs/usr/lib/R/library/parallel/INDEX +16 -0
  376. package/dist/vfs/usr/lib/R/library/parallel/Meta/Rd.rds +0 -0
  377. package/dist/vfs/usr/lib/R/library/parallel/Meta/features.rds +0 -0
  378. package/dist/vfs/usr/lib/R/library/parallel/Meta/hsearch.rds +0 -0
  379. package/dist/vfs/usr/lib/R/library/parallel/Meta/links.rds +0 -0
  380. package/dist/vfs/usr/lib/R/library/parallel/Meta/nsInfo.rds +0 -0
  381. package/dist/vfs/usr/lib/R/library/parallel/Meta/package.rds +0 -0
  382. package/dist/vfs/usr/lib/R/library/parallel/NAMESPACE +42 -0
  383. package/dist/vfs/usr/lib/R/library/parallel/R/parallel +27 -0
  384. package/dist/vfs/usr/lib/R/library/parallel/R/parallel.rdb +0 -0
  385. package/dist/vfs/usr/lib/R/library/parallel/R/parallel.rdx +0 -0
  386. package/dist/vfs/usr/lib/R/library/parallel/doc/parallel.pdf +0 -0
  387. package/dist/vfs/usr/lib/R/library/parallel/help/AnIndex +45 -0
  388. package/dist/vfs/usr/lib/R/library/parallel/help/aliases.rds +0 -0
  389. package/dist/vfs/usr/lib/R/library/parallel/help/parallel.rdb +0 -0
  390. package/dist/vfs/usr/lib/R/library/parallel/help/parallel.rdx +0 -0
  391. package/dist/vfs/usr/lib/R/library/parallel/help/paths.rds +0 -0
  392. package/dist/vfs/usr/lib/R/library/parallel/html/00Index.html +116 -0
  393. package/dist/vfs/usr/lib/R/library/parallel/html/R.css +130 -0
  394. package/dist/vfs/usr/lib/R/library/parallel/libs/parallel.so +0 -0
  395. package/dist/vfs/usr/lib/R/library/parallel/tests/Master.R +36 -0
  396. package/dist/vfs/usr/lib/R/library/parallel/tests/RSeed.R +25 -0
  397. package/dist/vfs/usr/lib/R/library/parallel/tests/multicore1.RR +10 -0
  398. package/dist/vfs/usr/lib/R/library/parallel/tests/multicore2.RR +15 -0
  399. package/dist/vfs/usr/lib/R/library/parallel/tests/multicore2.Rout.save +47 -0
  400. package/dist/vfs/usr/lib/R/library/parallel/tests/multicore3.RR +9 -0
  401. package/dist/vfs/usr/lib/R/library/parallel/tests/snow1.RR +41 -0
  402. package/dist/vfs/usr/lib/R/library/parallel/tests/snow2.RR +20 -0
  403. package/dist/vfs/usr/lib/R/library/parallel/tests/snow2.Rout.save +53 -0
  404. package/dist/vfs/usr/lib/R/library/splines/help/AnIndex +22 -0
  405. package/dist/vfs/usr/lib/R/library/splines/help/aliases.rds +0 -0
  406. package/dist/vfs/usr/lib/R/library/splines/help/paths.rds +0 -0
  407. package/dist/vfs/usr/lib/R/library/splines/help/splines.rdb +0 -0
  408. package/dist/vfs/usr/lib/R/library/splines/help/splines.rdx +0 -0
  409. package/dist/vfs/usr/lib/R/library/splines/html/00Index.html +69 -0
  410. package/dist/vfs/usr/lib/R/library/splines/html/R.css +130 -0
  411. package/dist/vfs/usr/lib/R/library/splines/tests/sparse-tst.R +35 -0
  412. package/dist/vfs/usr/lib/R/library/splines/tests/spline-tst.R +296 -0
  413. package/dist/vfs/usr/lib/R/library/stats/demo/glm.vr.R +24 -0
  414. package/dist/vfs/usr/lib/R/library/stats/demo/lm.glm.R +144 -0
  415. package/dist/vfs/usr/lib/R/library/stats/demo/nlm.R +110 -0
  416. package/dist/vfs/usr/lib/R/library/stats/demo/smooth.R +39 -0
  417. package/dist/vfs/usr/lib/R/library/stats/help/AnIndex +780 -0
  418. package/dist/vfs/usr/lib/R/library/stats/help/aliases.rds +0 -0
  419. package/dist/vfs/usr/lib/R/library/stats/help/paths.rds +0 -0
  420. package/dist/vfs/usr/lib/R/library/stats/help/stats.rdb +0 -0
  421. package/dist/vfs/usr/lib/R/library/stats/help/stats.rdx +0 -0
  422. package/dist/vfs/usr/lib/R/library/stats/html/00Index.html +1354 -0
  423. package/dist/vfs/usr/lib/R/library/stats/html/R.css +130 -0
  424. package/dist/vfs/usr/lib/R/library/stats/tests/NLSstClosest.R +12 -0
  425. package/dist/vfs/usr/lib/R/library/stats/tests/anorexia.rda +0 -0
  426. package/dist/vfs/usr/lib/R/library/stats/tests/arimaML.R +265 -0
  427. package/dist/vfs/usr/lib/R/library/stats/tests/bandwidth.R +19 -0
  428. package/dist/vfs/usr/lib/R/library/stats/tests/bandwidth.Rout.save +49 -0
  429. package/dist/vfs/usr/lib/R/library/stats/tests/birthwt.rda +0 -0
  430. package/dist/vfs/usr/lib/R/library/stats/tests/cmdscale.R +10 -0
  431. package/dist/vfs/usr/lib/R/library/stats/tests/drop1-polr.R +30 -0
  432. package/dist/vfs/usr/lib/R/library/stats/tests/glm-etc.R +162 -0
  433. package/dist/vfs/usr/lib/R/library/stats/tests/glm.R +82 -0
  434. package/dist/vfs/usr/lib/R/library/stats/tests/glm.Rout.save +194 -0
  435. package/dist/vfs/usr/lib/R/library/stats/tests/hills.rds +0 -0
  436. package/dist/vfs/usr/lib/R/library/stats/tests/ig_glm.R +68 -0
  437. package/dist/vfs/usr/lib/R/library/stats/tests/ks-test.R +116 -0
  438. package/dist/vfs/usr/lib/R/library/stats/tests/ks-test.Rout.save +365 -0
  439. package/dist/vfs/usr/lib/R/library/stats/tests/nafns.R +136 -0
  440. package/dist/vfs/usr/lib/R/library/stats/tests/nlm.R +107 -0
  441. package/dist/vfs/usr/lib/R/library/stats/tests/nls.R +389 -0
  442. package/dist/vfs/usr/lib/R/library/stats/tests/nls.Rout.save +828 -0
  443. package/dist/vfs/usr/lib/R/library/stats/tests/offsets.R +39 -0
  444. package/dist/vfs/usr/lib/R/library/stats/tests/ppr.R +6 -0
  445. package/dist/vfs/usr/lib/R/library/stats/tests/ppr_test.csv +443 -0
  446. package/dist/vfs/usr/lib/R/library/stats/tests/simulate.R +87 -0
  447. package/dist/vfs/usr/lib/R/library/stats/tests/simulate.Rout.save +417 -0
  448. package/dist/vfs/usr/lib/R/library/stats/tests/smooth.spline.R +188 -0
  449. package/dist/vfs/usr/lib/R/library/stats/tests/table-margins.R +20 -0
  450. package/dist/vfs/usr/lib/R/library/stats/tests/ts-tests.R +180 -0
  451. package/dist/vfs/usr/lib/R/library/stats4/help/AnIndex +36 -0
  452. package/dist/vfs/usr/lib/R/library/stats4/help/aliases.rds +0 -0
  453. package/dist/vfs/usr/lib/R/library/stats4/help/paths.rds +0 -0
  454. package/dist/vfs/usr/lib/R/library/stats4/help/stats4.rdb +0 -0
  455. package/dist/vfs/usr/lib/R/library/stats4/help/stats4.rdx +0 -0
  456. package/dist/vfs/usr/lib/R/library/stats4/html/00Index.html +75 -0
  457. package/dist/vfs/usr/lib/R/library/stats4/html/R.css +130 -0
  458. package/dist/vfs/usr/lib/R/library/stats4/tests/confint.R +23 -0
  459. package/dist/vfs/usr/lib/R/library/tcltk/DESCRIPTION +12 -0
  460. package/dist/vfs/usr/lib/R/library/tcltk/INDEX +13 -0
  461. package/dist/vfs/usr/lib/R/library/tcltk/Meta/Rd.rds +0 -0
  462. package/dist/vfs/usr/lib/R/library/tcltk/Meta/demo.rds +0 -0
  463. package/dist/vfs/usr/lib/R/library/tcltk/Meta/features.rds +0 -0
  464. package/dist/vfs/usr/lib/R/library/tcltk/Meta/hsearch.rds +0 -0
  465. package/dist/vfs/usr/lib/R/library/tcltk/Meta/links.rds +0 -0
  466. package/dist/vfs/usr/lib/R/library/tcltk/Meta/nsInfo.rds +0 -0
  467. package/dist/vfs/usr/lib/R/library/tcltk/Meta/package.rds +0 -0
  468. package/dist/vfs/usr/lib/R/library/tcltk/NAMESPACE +36 -0
  469. package/dist/vfs/usr/lib/R/library/tcltk/R/tcltk +20 -0
  470. package/dist/vfs/usr/lib/R/library/tcltk/demo/tkcanvas.R +151 -0
  471. package/dist/vfs/usr/lib/R/library/tcltk/demo/tkdensity.R +104 -0
  472. package/dist/vfs/usr/lib/R/library/tcltk/demo/tkfaq.R +32 -0
  473. package/dist/vfs/usr/lib/R/library/tcltk/demo/tkttest.R +89 -0
  474. package/dist/vfs/usr/lib/R/library/tcltk/exec/Tk-frontend.R +25 -0
  475. package/dist/vfs/usr/lib/R/library/tcltk/exec/console.tcl +79 -0
  476. package/dist/vfs/usr/lib/R/library/tcltk/exec/hierarchy.tcl +1271 -0
  477. package/dist/vfs/usr/lib/R/library/tcltk/exec/pkgIndex.tcl +50 -0
  478. package/dist/vfs/usr/lib/R/library/tcltk/exec/progressbar.tcl +2435 -0
  479. package/dist/vfs/usr/lib/R/library/tcltk/exec/util-dump.tcl +660 -0
  480. package/dist/vfs/usr/lib/R/library/tcltk/exec/util-expand.tcl +207 -0
  481. package/dist/vfs/usr/lib/R/library/tcltk/exec/util-number.tcl +101 -0
  482. package/dist/vfs/usr/lib/R/library/tcltk/exec/util-string.tcl +149 -0
  483. package/dist/vfs/usr/lib/R/library/tcltk/exec/util-tk.tcl +244 -0
  484. package/dist/vfs/usr/lib/R/library/tcltk/exec/util.tcl +895 -0
  485. package/dist/vfs/usr/lib/R/library/tcltk/exec/widget.tcl +975 -0
  486. package/dist/vfs/usr/lib/R/library/tcltk/help/AnIndex +305 -0
  487. package/dist/vfs/usr/lib/R/library/tcltk/help/aliases.rds +0 -0
  488. package/dist/vfs/usr/lib/R/library/tcltk/help/paths.rds +0 -0
  489. package/dist/vfs/usr/lib/R/library/tcltk/help/tcltk.rdb +0 -0
  490. package/dist/vfs/usr/lib/R/library/tcltk/help/tcltk.rdx +0 -0
  491. package/dist/vfs/usr/lib/R/library/tcltk/html/00Index.html +680 -0
  492. package/dist/vfs/usr/lib/R/library/tcltk/html/R.css +130 -0
  493. package/dist/vfs/usr/lib/R/library/tools/help/AnIndex +160 -0
  494. package/dist/vfs/usr/lib/R/library/tools/help/aliases.rds +0 -0
  495. package/dist/vfs/usr/lib/R/library/tools/help/paths.rds +0 -0
  496. package/dist/vfs/usr/lib/R/library/tools/help/tools.rdb +0 -0
  497. package/dist/vfs/usr/lib/R/library/tools/help/tools.rdx +0 -0
  498. package/dist/vfs/usr/lib/R/library/tools/html/00Index.html +455 -0
  499. package/dist/vfs/usr/lib/R/library/tools/html/R.css +130 -0
  500. package/dist/vfs/usr/lib/R/library/tools/tests/QC.R +34 -0
  501. package/dist/vfs/usr/lib/R/library/tools/tests/Rd-Sexpr-error.Rd +8 -0
  502. package/dist/vfs/usr/lib/R/library/tools/tests/Rd-Sexpr-hide-empty.Rd +18 -0
  503. package/dist/vfs/usr/lib/R/library/tools/tests/Rd-Sexpr-warning.Rd +6 -0
  504. package/dist/vfs/usr/lib/R/library/tools/tests/Rd.R +53 -0
  505. package/dist/vfs/usr/lib/R/library/tools/tests/Rd2HTML.R +52 -0
  506. package/dist/vfs/usr/lib/R/library/tools/tests/S3.R +8 -0
  507. package/dist/vfs/usr/lib/R/library/tools/tests/doi.Rd +8 -0
  508. package/dist/vfs/usr/lib/R/library/tools/tests/undoc.R +4 -0
  509. package/dist/vfs/usr/lib/R/library/translations/DESCRIPTION +7 -0
  510. package/dist/vfs/usr/lib/R/library/translations/Meta/features.rds +0 -0
  511. package/dist/vfs/usr/lib/R/library/translations/Meta/package.rds +0 -0
  512. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-base.mo +0 -0
  513. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-compiler.mo +0 -0
  514. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-grDevices.mo +0 -0
  515. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-graphics.mo +0 -0
  516. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-grid.mo +0 -0
  517. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-methods.mo +0 -0
  518. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-parallel.mo +0 -0
  519. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-splines.mo +0 -0
  520. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-stats.mo +0 -0
  521. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-stats4.mo +0 -0
  522. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-tcltk.mo +0 -0
  523. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-tools.mo +0 -0
  524. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R-utils.mo +0 -0
  525. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/R.mo +0 -0
  526. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/RGui.mo +0 -0
  527. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/grDevices.mo +0 -0
  528. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/graphics.mo +0 -0
  529. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/grid.mo +0 -0
  530. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/methods.mo +0 -0
  531. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/parallel.mo +0 -0
  532. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/splines.mo +0 -0
  533. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/stats.mo +0 -0
  534. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/tcltk.mo +0 -0
  535. package/dist/vfs/usr/lib/R/library/translations/da/LC_MESSAGES/tools.mo +0 -0
  536. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-base.mo +0 -0
  537. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-compiler.mo +0 -0
  538. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-grDevices.mo +0 -0
  539. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-graphics.mo +0 -0
  540. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-grid.mo +0 -0
  541. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-methods.mo +0 -0
  542. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-parallel.mo +0 -0
  543. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-splines.mo +0 -0
  544. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-stats.mo +0 -0
  545. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-stats4.mo +0 -0
  546. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-tcltk.mo +0 -0
  547. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-tools.mo +0 -0
  548. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R-utils.mo +0 -0
  549. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/R.mo +0 -0
  550. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/RGui.mo +0 -0
  551. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/grDevices.mo +0 -0
  552. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/graphics.mo +0 -0
  553. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/grid.mo +0 -0
  554. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/methods.mo +0 -0
  555. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/parallel.mo +0 -0
  556. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/splines.mo +0 -0
  557. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/stats.mo +0 -0
  558. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/tcltk.mo +0 -0
  559. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/tools.mo +0 -0
  560. package/dist/vfs/usr/lib/R/library/translations/de/LC_MESSAGES/utils.mo +0 -0
  561. package/dist/vfs/usr/lib/R/library/translations/en/LC_MESSAGES/R.mo +0 -0
  562. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-base.mo +0 -0
  563. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-compiler.mo +0 -0
  564. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-grDevices.mo +0 -0
  565. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-graphics.mo +0 -0
  566. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-grid.mo +0 -0
  567. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-methods.mo +0 -0
  568. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-parallel.mo +0 -0
  569. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-splines.mo +0 -0
  570. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-stats.mo +0 -0
  571. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-stats4.mo +0 -0
  572. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-tcltk.mo +0 -0
  573. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-tools.mo +0 -0
  574. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R-utils.mo +0 -0
  575. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/R.mo +0 -0
  576. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/grDevices.mo +0 -0
  577. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/graphics.mo +0 -0
  578. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/grid.mo +0 -0
  579. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/methods.mo +0 -0
  580. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/parallel.mo +0 -0
  581. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/splines.mo +0 -0
  582. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/stats.mo +0 -0
  583. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/tcltk.mo +0 -0
  584. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/tools.mo +0 -0
  585. package/dist/vfs/usr/lib/R/library/translations/en@quot/LC_MESSAGES/utils.mo +0 -0
  586. package/dist/vfs/usr/lib/R/library/translations/en_GB/LC_MESSAGES/R-grDevices.mo +0 -0
  587. package/dist/vfs/usr/lib/R/library/translations/en_GB/LC_MESSAGES/R.mo +0 -0
  588. package/dist/vfs/usr/lib/R/library/translations/en_GB/LC_MESSAGES/grDevices.mo +0 -0
  589. package/dist/vfs/usr/lib/R/library/translations/es/LC_MESSAGES/R.mo +0 -0
  590. package/dist/vfs/usr/lib/R/library/translations/es/LC_MESSAGES/RGui.mo +0 -0
  591. package/dist/vfs/usr/lib/R/library/translations/es/LC_MESSAGES/graphics.mo +0 -0
  592. package/dist/vfs/usr/lib/R/library/translations/fa/LC_MESSAGES/R-base.mo +0 -0
  593. package/dist/vfs/usr/lib/R/library/translations/fa/LC_MESSAGES/R-utils.mo +0 -0
  594. package/dist/vfs/usr/lib/R/library/translations/fa/LC_MESSAGES/R.mo +0 -0
  595. package/dist/vfs/usr/lib/R/library/translations/fa/LC_MESSAGES/RGui.mo +0 -0
  596. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-base.mo +0 -0
  597. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-compiler.mo +0 -0
  598. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-grDevices.mo +0 -0
  599. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-graphics.mo +0 -0
  600. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-grid.mo +0 -0
  601. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-methods.mo +0 -0
  602. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-parallel.mo +0 -0
  603. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-splines.mo +0 -0
  604. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-stats.mo +0 -0
  605. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-stats4.mo +0 -0
  606. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-tcltk.mo +0 -0
  607. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-tools.mo +0 -0
  608. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R-utils.mo +0 -0
  609. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/R.mo +0 -0
  610. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/RGui.mo +0 -0
  611. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/grDevices.mo +0 -0
  612. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/graphics.mo +0 -0
  613. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/grid.mo +0 -0
  614. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/methods.mo +0 -0
  615. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/parallel.mo +0 -0
  616. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/splines.mo +0 -0
  617. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/stats.mo +0 -0
  618. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/tcltk.mo +0 -0
  619. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/tools.mo +0 -0
  620. package/dist/vfs/usr/lib/R/library/translations/fr/LC_MESSAGES/utils.mo +0 -0
  621. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-base.mo +0 -0
  622. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-compiler.mo +0 -0
  623. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-grDevices.mo +0 -0
  624. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-graphics.mo +0 -0
  625. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-grid.mo +0 -0
  626. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-methods.mo +0 -0
  627. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-parallel.mo +0 -0
  628. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-splines.mo +0 -0
  629. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-stats.mo +0 -0
  630. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-stats4.mo +0 -0
  631. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-tcltk.mo +0 -0
  632. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-tools.mo +0 -0
  633. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R-utils.mo +0 -0
  634. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/R.mo +0 -0
  635. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/RGui.mo +0 -0
  636. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/grDevices.mo +0 -0
  637. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/graphics.mo +0 -0
  638. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/grid.mo +0 -0
  639. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/methods.mo +0 -0
  640. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/parallel.mo +0 -0
  641. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/splines.mo +0 -0
  642. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/stats.mo +0 -0
  643. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/tcltk.mo +0 -0
  644. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/tools.mo +0 -0
  645. package/dist/vfs/usr/lib/R/library/translations/it/LC_MESSAGES/utils.mo +0 -0
  646. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-base.mo +0 -0
  647. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-compiler.mo +0 -0
  648. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-grDevices.mo +0 -0
  649. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-graphics.mo +0 -0
  650. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-grid.mo +0 -0
  651. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-methods.mo +0 -0
  652. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-splines.mo +0 -0
  653. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-stats.mo +0 -0
  654. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-stats4.mo +0 -0
  655. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-tcltk.mo +0 -0
  656. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-tools.mo +0 -0
  657. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R-utils.mo +0 -0
  658. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/R.mo +0 -0
  659. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/RGui.mo +0 -0
  660. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/grDevices.mo +0 -0
  661. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/graphics.mo +0 -0
  662. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/grid.mo +0 -0
  663. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/methods.mo +0 -0
  664. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/splines.mo +0 -0
  665. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/stats.mo +0 -0
  666. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/tcltk.mo +0 -0
  667. package/dist/vfs/usr/lib/R/library/translations/ja/LC_MESSAGES/tools.mo +0 -0
  668. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-base.mo +0 -0
  669. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-compiler.mo +0 -0
  670. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-grDevices.mo +0 -0
  671. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-graphics.mo +0 -0
  672. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-grid.mo +0 -0
  673. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-methods.mo +0 -0
  674. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-parallel.mo +0 -0
  675. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-splines.mo +0 -0
  676. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-stats.mo +0 -0
  677. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-stats4.mo +0 -0
  678. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-tcltk.mo +0 -0
  679. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-tools.mo +0 -0
  680. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R-utils.mo +0 -0
  681. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/R.mo +0 -0
  682. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/RGui.mo +0 -0
  683. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/grDevices.mo +0 -0
  684. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/graphics.mo +0 -0
  685. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/grid.mo +0 -0
  686. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/methods.mo +0 -0
  687. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/parallel.mo +0 -0
  688. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/splines.mo +0 -0
  689. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/stats.mo +0 -0
  690. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/tcltk.mo +0 -0
  691. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/tools.mo +0 -0
  692. package/dist/vfs/usr/lib/R/library/translations/ko/LC_MESSAGES/utils.mo +0 -0
  693. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-base.mo +0 -0
  694. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-compiler.mo +0 -0
  695. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-grDevices.mo +0 -0
  696. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-graphics.mo +0 -0
  697. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-grid.mo +0 -0
  698. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-methods.mo +0 -0
  699. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-parallel.mo +0 -0
  700. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-splines.mo +0 -0
  701. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-stats.mo +0 -0
  702. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-stats4.mo +0 -0
  703. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-tcltk.mo +0 -0
  704. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-tools.mo +0 -0
  705. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R-utils.mo +0 -0
  706. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/R.mo +0 -0
  707. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/RGui.mo +0 -0
  708. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/grDevices.mo +0 -0
  709. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/graphics.mo +0 -0
  710. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/grid.mo +0 -0
  711. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/methods.mo +0 -0
  712. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/parallel.mo +0 -0
  713. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/splines.mo +0 -0
  714. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/stats.mo +0 -0
  715. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/tcltk.mo +0 -0
  716. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/tools.mo +0 -0
  717. package/dist/vfs/usr/lib/R/library/translations/lt/LC_MESSAGES/utils.mo +0 -0
  718. package/dist/vfs/usr/lib/R/library/translations/nn/LC_MESSAGES/R-base.mo +0 -0
  719. package/dist/vfs/usr/lib/R/library/translations/nn/LC_MESSAGES/R.mo +0 -0
  720. package/dist/vfs/usr/lib/R/library/translations/nn/LC_MESSAGES/RGui.mo +0 -0
  721. package/dist/vfs/usr/lib/R/library/translations/nn/LC_MESSAGES/graphics.mo +0 -0
  722. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-base.mo +0 -0
  723. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-compiler.mo +0 -0
  724. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-grDevices.mo +0 -0
  725. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-graphics.mo +0 -0
  726. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-grid.mo +0 -0
  727. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-methods.mo +0 -0
  728. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-parallel.mo +0 -0
  729. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-splines.mo +0 -0
  730. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-stats.mo +0 -0
  731. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-stats4.mo +0 -0
  732. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-tcltk.mo +0 -0
  733. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-tools.mo +0 -0
  734. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R-utils.mo +0 -0
  735. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/R.mo +0 -0
  736. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/RGui.mo +0 -0
  737. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/grDevices.mo +0 -0
  738. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/graphics.mo +0 -0
  739. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/grid.mo +0 -0
  740. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/methods.mo +0 -0
  741. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/parallel.mo +0 -0
  742. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/splines.mo +0 -0
  743. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/stats.mo +0 -0
  744. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/tcltk.mo +0 -0
  745. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/tools.mo +0 -0
  746. package/dist/vfs/usr/lib/R/library/translations/pl/LC_MESSAGES/utils.mo +0 -0
  747. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-base.mo +0 -0
  748. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-compiler.mo +0 -0
  749. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-grDevices.mo +0 -0
  750. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-graphics.mo +0 -0
  751. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-grid.mo +0 -0
  752. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-methods.mo +0 -0
  753. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-splines.mo +0 -0
  754. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-stats.mo +0 -0
  755. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-stats4.mo +0 -0
  756. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-tcltk.mo +0 -0
  757. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-tools.mo +0 -0
  758. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R-utils.mo +0 -0
  759. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/R.mo +0 -0
  760. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/RGui.mo +0 -0
  761. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/grDevices.mo +0 -0
  762. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/graphics.mo +0 -0
  763. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/grid.mo +0 -0
  764. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/methods.mo +0 -0
  765. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/splines.mo +0 -0
  766. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/stats.mo +0 -0
  767. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/tcltk.mo +0 -0
  768. package/dist/vfs/usr/lib/R/library/translations/pt_BR/LC_MESSAGES/tools.mo +0 -0
  769. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-base.mo +0 -0
  770. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-compiler.mo +0 -0
  771. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-grDevices.mo +0 -0
  772. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-graphics.mo +0 -0
  773. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-grid.mo +0 -0
  774. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-methods.mo +0 -0
  775. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-parallel.mo +0 -0
  776. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-splines.mo +0 -0
  777. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-stats.mo +0 -0
  778. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-stats4.mo +0 -0
  779. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-tcltk.mo +0 -0
  780. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-tools.mo +0 -0
  781. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R-utils.mo +0 -0
  782. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/R.mo +0 -0
  783. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/RGui.mo +0 -0
  784. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/grDevices.mo +0 -0
  785. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/graphics.mo +0 -0
  786. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/grid.mo +0 -0
  787. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/methods.mo +0 -0
  788. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/parallel.mo +0 -0
  789. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/splines.mo +0 -0
  790. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/stats.mo +0 -0
  791. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/tcltk.mo +0 -0
  792. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/tools.mo +0 -0
  793. package/dist/vfs/usr/lib/R/library/translations/ru/LC_MESSAGES/utils.mo +0 -0
  794. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R-base.mo +0 -0
  795. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R-stats.mo +0 -0
  796. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R-stats4.mo +0 -0
  797. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R-tools.mo +0 -0
  798. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R-utils.mo +0 -0
  799. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/R.mo +0 -0
  800. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/RGui.mo +0 -0
  801. package/dist/vfs/usr/lib/R/library/translations/tr/LC_MESSAGES/graphics.mo +0 -0
  802. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-base.mo +0 -0
  803. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-compiler.mo +0 -0
  804. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-grDevices.mo +0 -0
  805. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-graphics.mo +0 -0
  806. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-grid.mo +0 -0
  807. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-methods.mo +0 -0
  808. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-parallel.mo +0 -0
  809. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-splines.mo +0 -0
  810. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-stats.mo +0 -0
  811. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-stats4.mo +0 -0
  812. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-tcltk.mo +0 -0
  813. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-tools.mo +0 -0
  814. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R-utils.mo +0 -0
  815. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/R.mo +0 -0
  816. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/RGui.mo +0 -0
  817. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/grDevices.mo +0 -0
  818. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/graphics.mo +0 -0
  819. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/grid.mo +0 -0
  820. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/methods.mo +0 -0
  821. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/parallel.mo +0 -0
  822. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/splines.mo +0 -0
  823. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/stats.mo +0 -0
  824. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/tcltk.mo +0 -0
  825. package/dist/vfs/usr/lib/R/library/translations/zh_CN/LC_MESSAGES/tools.mo +0 -0
  826. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-base.mo +0 -0
  827. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-compiler.mo +0 -0
  828. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-grDevices.mo +0 -0
  829. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-graphics.mo +0 -0
  830. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-grid.mo +0 -0
  831. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-methods.mo +0 -0
  832. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-parallel.mo +0 -0
  833. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-splines.mo +0 -0
  834. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-stats.mo +0 -0
  835. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-stats4.mo +0 -0
  836. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-tcltk.mo +0 -0
  837. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-tools.mo +0 -0
  838. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R-utils.mo +0 -0
  839. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/R.mo +0 -0
  840. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/RGui.mo +0 -0
  841. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/grDevices.mo +0 -0
  842. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/graphics.mo +0 -0
  843. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/grid.mo +0 -0
  844. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/methods.mo +0 -0
  845. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/parallel.mo +0 -0
  846. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/splines.mo +0 -0
  847. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/stats.mo +0 -0
  848. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/tcltk.mo +0 -0
  849. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/tools.mo +0 -0
  850. package/dist/vfs/usr/lib/R/library/translations/zh_TW/LC_MESSAGES/utils.mo +0 -0
  851. package/dist/vfs/usr/lib/R/library/utils/doc/Sweave.pdf +0 -0
  852. package/dist/vfs/usr/lib/R/library/utils/help/AnIndex +382 -0
  853. package/dist/vfs/usr/lib/R/library/utils/help/aliases.rds +0 -0
  854. package/dist/vfs/usr/lib/R/library/utils/help/paths.rds +0 -0
  855. package/dist/vfs/usr/lib/R/library/utils/help/utils.rdb +0 -0
  856. package/dist/vfs/usr/lib/R/library/utils/help/utils.rdx +0 -0
  857. package/dist/vfs/usr/lib/R/library/utils/html/00Index.html +802 -0
  858. package/dist/vfs/usr/lib/R/library/utils/html/R.css +130 -0
  859. package/dist/vfs/usr/lib/R/library/utils/misc/exDIF.csv +5 -0
  860. package/dist/vfs/usr/lib/R/library/utils/misc/exDIF.dif +44 -0
  861. package/dist/vfs/usr/lib/R/library/utils/tests/Sexpr-verb-ex.Rnw +44 -0
  862. package/dist/vfs/usr/lib/R/library/utils/tests/Sweave-tst.R +85 -0
  863. package/dist/vfs/usr/lib/R/library/utils/tests/charclass.R +97 -0
  864. package/dist/vfs/usr/lib/R/library/utils/tests/completion.R +37 -0
  865. package/dist/vfs/usr/lib/R/library/utils/tests/customgraphics.Rnw +20 -0
  866. package/dist/vfs/usr/lib/R/library/utils/tests/download.file.R +170 -0
  867. package/dist/vfs/usr/lib/R/library/utils/tests/keepsource.Rnw +12 -0
  868. package/dist/vfs/usr/lib/R/library/utils/tests/relist.R +24 -0
  869. package/dist/vfs/usr/lib/R/library/utils/tests/swv-keepSrc-1.Rnw +48 -0
  870. package/dist/vfs/usr/lib/R/modules/internet.so +0 -0
  871. package/dist/vfs/usr/lib/R/modules/lapack.so +0 -0
  872. package/dist/vfs/usr/lib/R/share/R/REMOVE.R +82 -0
  873. package/dist/vfs/usr/lib/R/share/R/examples-footer.R +12 -0
  874. package/dist/vfs/usr/lib/R/share/R/examples-header.R +85 -0
  875. package/dist/vfs/usr/lib/R/share/R/nspackloader.R +27 -0
  876. package/dist/vfs/usr/lib/R/share/R/tests-startup.R +4 -0
  877. package/dist/vfs/usr/lib/R/share/Rd/macros/system.Rd +56 -0
  878. package/dist/vfs/usr/lib/R/share/dictionaries/en_stats.rds +0 -0
  879. package/dist/vfs/usr/lib/R/share/encodings/Adobe-glyphlist +4200 -0
  880. package/dist/vfs/usr/lib/R/share/encodings/character-sets +1900 -0
  881. package/dist/vfs/usr/lib/R/share/java/README +3 -0
  882. package/dist/vfs/usr/lib/R/share/java/getsp.class +0 -0
  883. package/dist/vfs/usr/lib/R/share/licenses/AGPL-3 +661 -0
  884. package/dist/vfs/usr/lib/R/share/licenses/Artistic-2.0 +197 -0
  885. package/dist/vfs/usr/lib/R/share/licenses/BSD_2_clause +40 -0
  886. package/dist/vfs/usr/lib/R/share/licenses/BSD_3_clause +46 -0
  887. package/dist/vfs/usr/lib/R/share/licenses/GPL-2 +339 -0
  888. package/dist/vfs/usr/lib/R/share/licenses/GPL-3 +674 -0
  889. package/dist/vfs/usr/lib/R/share/licenses/LGPL-2 +481 -0
  890. package/dist/vfs/usr/lib/R/share/licenses/LGPL-2.1 +502 -0
  891. package/dist/vfs/usr/lib/R/share/licenses/LGPL-3 +165 -0
  892. package/dist/vfs/usr/lib/R/share/licenses/MIT +35 -0
  893. package/dist/vfs/usr/lib/R/share/licenses/license.db +268 -0
  894. package/dist/vfs/usr/lib/R/share/make/basepkg.mk +207 -0
  895. package/dist/vfs/usr/lib/R/share/make/check_vars_ini.mk +18 -0
  896. package/dist/vfs/usr/lib/R/share/make/check_vars_out.mk +22 -0
  897. package/dist/vfs/usr/lib/R/share/make/clean.mk +2 -0
  898. package/dist/vfs/usr/lib/R/share/make/config.mk +6 -0
  899. package/dist/vfs/usr/lib/R/share/make/lazycomp.mk +23 -0
  900. package/dist/vfs/usr/lib/R/share/make/shlib.mk +30 -0
  901. package/dist/vfs/usr/lib/R/share/make/vars.mk +14 -0
  902. package/dist/vfs/usr/lib/R/share/make/winshlib.mk +41 -0
  903. package/dist/vfs/usr/lib/R/share/sh/echo.sh +4 -0
  904. package/dist/vfs/usr/lib/R/share/texmf/bibtex/bib/RJournal.bib +10345 -0
  905. package/dist/vfs/usr/lib/R/share/texmf/bibtex/bib/Rnews.bib +2733 -0
  906. package/dist/vfs/usr/lib/R/share/texmf/bibtex/bst/jss.bst +1653 -0
  907. package/dist/vfs/usr/lib/R/share/texmf/tex/latex/Rd.sty +450 -0
  908. package/dist/vfs/usr/lib/R/share/texmf/tex/latex/Sweave.sty +59 -0
  909. package/dist/vfs/usr/lib/R/share/texmf/tex/latex/jss.cls +490 -0
  910. package/dist/vfs/usr/lib/R/share/texmf/tex/latex/omscmtt.fd +21 -0
  911. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Abidjan +0 -0
  912. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Accra +0 -0
  913. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Addis_Ababa +0 -0
  914. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Algiers +0 -0
  915. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Asmara +0 -0
  916. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Asmera +0 -0
  917. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Bamako +0 -0
  918. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Bangui +0 -0
  919. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Banjul +0 -0
  920. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Bissau +0 -0
  921. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Blantyre +0 -0
  922. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Brazzaville +0 -0
  923. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Bujumbura +0 -0
  924. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Cairo +0 -0
  925. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Casablanca +0 -0
  926. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Ceuta +0 -0
  927. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Conakry +0 -0
  928. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Dakar +0 -0
  929. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Dar_es_Salaam +0 -0
  930. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Djibouti +0 -0
  931. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Douala +0 -0
  932. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/El_Aaiun +0 -0
  933. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Freetown +0 -0
  934. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Gaborone +0 -0
  935. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Harare +0 -0
  936. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Johannesburg +0 -0
  937. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Juba +0 -0
  938. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Kampala +0 -0
  939. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Khartoum +0 -0
  940. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Kigali +0 -0
  941. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Kinshasa +0 -0
  942. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Lagos +0 -0
  943. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Libreville +0 -0
  944. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Lome +0 -0
  945. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Luanda +0 -0
  946. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Lubumbashi +0 -0
  947. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Lusaka +0 -0
  948. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Malabo +0 -0
  949. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Maputo +0 -0
  950. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Maseru +0 -0
  951. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Mbabane +0 -0
  952. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Mogadishu +0 -0
  953. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Monrovia +0 -0
  954. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Nairobi +0 -0
  955. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Ndjamena +0 -0
  956. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Niamey +0 -0
  957. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Nouakchott +0 -0
  958. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Ouagadougou +0 -0
  959. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Porto-Novo +0 -0
  960. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Sao_Tome +0 -0
  961. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Timbuktu +0 -0
  962. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Tripoli +0 -0
  963. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Tunis +0 -0
  964. package/dist/vfs/usr/lib/R/share/zoneinfo/Africa/Windhoek +0 -0
  965. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Adak +0 -0
  966. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Anchorage +0 -0
  967. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Anguilla +0 -0
  968. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Antigua +0 -0
  969. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Araguaina +0 -0
  970. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Buenos_Aires +0 -0
  971. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Catamarca +0 -0
  972. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/ComodRivadavia +0 -0
  973. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Cordoba +0 -0
  974. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Jujuy +0 -0
  975. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/La_Rioja +0 -0
  976. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Mendoza +0 -0
  977. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Rio_Gallegos +0 -0
  978. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Salta +0 -0
  979. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/San_Juan +0 -0
  980. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/San_Luis +0 -0
  981. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Tucuman +0 -0
  982. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Argentina/Ushuaia +0 -0
  983. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Aruba +0 -0
  984. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Asuncion +0 -0
  985. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Atikokan +0 -0
  986. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Atka +0 -0
  987. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Bahia +0 -0
  988. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Bahia_Banderas +0 -0
  989. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Barbados +0 -0
  990. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Belem +0 -0
  991. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Belize +0 -0
  992. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Blanc-Sablon +0 -0
  993. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Boa_Vista +0 -0
  994. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Bogota +0 -0
  995. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Boise +0 -0
  996. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Buenos_Aires +0 -0
  997. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cambridge_Bay +0 -0
  998. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Campo_Grande +0 -0
  999. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cancun +0 -0
  1000. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Caracas +0 -0
  1001. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Catamarca +0 -0
  1002. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cayenne +0 -0
  1003. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cayman +0 -0
  1004. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Chicago +0 -0
  1005. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Chihuahua +0 -0
  1006. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Ciudad_Juarez +0 -0
  1007. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Coral_Harbour +0 -0
  1008. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cordoba +0 -0
  1009. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Costa_Rica +0 -0
  1010. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Creston +0 -0
  1011. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Cuiaba +0 -0
  1012. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Curacao +0 -0
  1013. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Danmarkshavn +0 -0
  1014. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Dawson +0 -0
  1015. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Dawson_Creek +0 -0
  1016. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Denver +0 -0
  1017. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Detroit +0 -0
  1018. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Dominica +0 -0
  1019. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Edmonton +0 -0
  1020. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Eirunepe +0 -0
  1021. package/dist/vfs/usr/lib/R/share/zoneinfo/America/El_Salvador +0 -0
  1022. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Ensenada +0 -0
  1023. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Fort_Nelson +0 -0
  1024. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Fort_Wayne +0 -0
  1025. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Fortaleza +0 -0
  1026. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Glace_Bay +0 -0
  1027. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Godthab +0 -0
  1028. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Goose_Bay +0 -0
  1029. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Grand_Turk +0 -0
  1030. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Grenada +0 -0
  1031. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Guadeloupe +0 -0
  1032. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Guatemala +0 -0
  1033. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Guayaquil +0 -0
  1034. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Guyana +0 -0
  1035. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Halifax +0 -0
  1036. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Havana +0 -0
  1037. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Hermosillo +0 -0
  1038. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Indianapolis +0 -0
  1039. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Knox +0 -0
  1040. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Marengo +0 -0
  1041. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Petersburg +0 -0
  1042. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Tell_City +0 -0
  1043. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Vevay +0 -0
  1044. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Vincennes +0 -0
  1045. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indiana/Winamac +0 -0
  1046. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Indianapolis +0 -0
  1047. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Inuvik +0 -0
  1048. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Iqaluit +0 -0
  1049. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Jamaica +0 -0
  1050. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Jujuy +0 -0
  1051. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Juneau +0 -0
  1052. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Kentucky/Louisville +0 -0
  1053. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Kentucky/Monticello +0 -0
  1054. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Knox_IN +0 -0
  1055. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Kralendijk +0 -0
  1056. package/dist/vfs/usr/lib/R/share/zoneinfo/America/La_Paz +0 -0
  1057. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Lima +0 -0
  1058. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Los_Angeles +0 -0
  1059. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Louisville +0 -0
  1060. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Lower_Princes +0 -0
  1061. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Maceio +0 -0
  1062. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Managua +0 -0
  1063. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Manaus +0 -0
  1064. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Marigot +0 -0
  1065. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Martinique +0 -0
  1066. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Matamoros +0 -0
  1067. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Mazatlan +0 -0
  1068. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Mendoza +0 -0
  1069. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Menominee +0 -0
  1070. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Merida +0 -0
  1071. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Metlakatla +0 -0
  1072. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Mexico_City +0 -0
  1073. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Miquelon +0 -0
  1074. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Moncton +0 -0
  1075. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Monterrey +0 -0
  1076. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Montevideo +0 -0
  1077. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Montreal +0 -0
  1078. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Montserrat +0 -0
  1079. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Nassau +0 -0
  1080. package/dist/vfs/usr/lib/R/share/zoneinfo/America/New_York +0 -0
  1081. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Nipigon +0 -0
  1082. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Nome +0 -0
  1083. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Noronha +0 -0
  1084. package/dist/vfs/usr/lib/R/share/zoneinfo/America/North_Dakota/Beulah +0 -0
  1085. package/dist/vfs/usr/lib/R/share/zoneinfo/America/North_Dakota/Center +0 -0
  1086. package/dist/vfs/usr/lib/R/share/zoneinfo/America/North_Dakota/New_Salem +0 -0
  1087. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Nuuk +0 -0
  1088. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Ojinaga +0 -0
  1089. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Panama +0 -0
  1090. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Pangnirtung +0 -0
  1091. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Paramaribo +0 -0
  1092. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Phoenix +0 -0
  1093. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Port-au-Prince +0 -0
  1094. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Port_of_Spain +0 -0
  1095. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Porto_Acre +0 -0
  1096. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Porto_Velho +0 -0
  1097. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Puerto_Rico +0 -0
  1098. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Punta_Arenas +0 -0
  1099. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Rainy_River +0 -0
  1100. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Rankin_Inlet +0 -0
  1101. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Recife +0 -0
  1102. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Regina +0 -0
  1103. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Resolute +0 -0
  1104. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Rio_Branco +0 -0
  1105. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Rosario +0 -0
  1106. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Santa_Isabel +0 -0
  1107. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Santarem +0 -0
  1108. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Santiago +0 -0
  1109. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Santo_Domingo +0 -0
  1110. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Sao_Paulo +0 -0
  1111. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Scoresbysund +0 -0
  1112. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Shiprock +0 -0
  1113. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Sitka +0 -0
  1114. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Barthelemy +0 -0
  1115. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Johns +0 -0
  1116. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Kitts +0 -0
  1117. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Lucia +0 -0
  1118. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Thomas +0 -0
  1119. package/dist/vfs/usr/lib/R/share/zoneinfo/America/St_Vincent +0 -0
  1120. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Swift_Current +0 -0
  1121. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Tegucigalpa +0 -0
  1122. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Thule +0 -0
  1123. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Thunder_Bay +0 -0
  1124. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Tijuana +0 -0
  1125. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Toronto +0 -0
  1126. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Tortola +0 -0
  1127. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Vancouver +0 -0
  1128. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Virgin +0 -0
  1129. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Whitehorse +0 -0
  1130. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Winnipeg +0 -0
  1131. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Yakutat +0 -0
  1132. package/dist/vfs/usr/lib/R/share/zoneinfo/America/Yellowknife +0 -0
  1133. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Casey +0 -0
  1134. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Davis +0 -0
  1135. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/DumontDUrville +0 -0
  1136. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Macquarie +0 -0
  1137. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Mawson +0 -0
  1138. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/McMurdo +0 -0
  1139. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Palmer +0 -0
  1140. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Rothera +0 -0
  1141. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/South_Pole +0 -0
  1142. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Syowa +0 -0
  1143. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Troll +0 -0
  1144. package/dist/vfs/usr/lib/R/share/zoneinfo/Antarctica/Vostok +0 -0
  1145. package/dist/vfs/usr/lib/R/share/zoneinfo/Arctic/Longyearbyen +0 -0
  1146. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Aden +0 -0
  1147. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Almaty +0 -0
  1148. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Amman +0 -0
  1149. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Anadyr +0 -0
  1150. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Aqtau +0 -0
  1151. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Aqtobe +0 -0
  1152. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ashgabat +0 -0
  1153. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ashkhabad +0 -0
  1154. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Atyrau +0 -0
  1155. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Baghdad +0 -0
  1156. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Bahrain +0 -0
  1157. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Baku +0 -0
  1158. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Bangkok +0 -0
  1159. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Barnaul +0 -0
  1160. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Beirut +0 -0
  1161. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Bishkek +0 -0
  1162. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Brunei +0 -0
  1163. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Calcutta +0 -0
  1164. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Chita +0 -0
  1165. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Choibalsan +0 -0
  1166. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Chongqing +0 -0
  1167. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Chungking +0 -0
  1168. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Colombo +0 -0
  1169. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Dacca +0 -0
  1170. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Damascus +0 -0
  1171. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Dhaka +0 -0
  1172. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Dili +0 -0
  1173. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Dubai +0 -0
  1174. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Dushanbe +0 -0
  1175. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Famagusta +0 -0
  1176. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Gaza +0 -0
  1177. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Harbin +0 -0
  1178. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Hebron +0 -0
  1179. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ho_Chi_Minh +0 -0
  1180. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Hong_Kong +0 -0
  1181. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Hovd +0 -0
  1182. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Irkutsk +0 -0
  1183. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Istanbul +0 -0
  1184. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Jakarta +0 -0
  1185. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Jayapura +0 -0
  1186. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Jerusalem +0 -0
  1187. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kabul +0 -0
  1188. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kamchatka +0 -0
  1189. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Karachi +0 -0
  1190. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kashgar +0 -0
  1191. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kathmandu +0 -0
  1192. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Katmandu +0 -0
  1193. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Khandyga +0 -0
  1194. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kolkata +0 -0
  1195. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Krasnoyarsk +0 -0
  1196. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kuala_Lumpur +0 -0
  1197. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kuching +0 -0
  1198. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Kuwait +0 -0
  1199. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Macao +0 -0
  1200. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Macau +0 -0
  1201. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Magadan +0 -0
  1202. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Makassar +0 -0
  1203. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Manila +0 -0
  1204. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Muscat +0 -0
  1205. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Nicosia +0 -0
  1206. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Novokuznetsk +0 -0
  1207. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Novosibirsk +0 -0
  1208. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Omsk +0 -0
  1209. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Oral +0 -0
  1210. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Phnom_Penh +0 -0
  1211. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Pontianak +0 -0
  1212. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Pyongyang +0 -0
  1213. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Qatar +0 -0
  1214. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Qostanay +0 -0
  1215. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Qyzylorda +0 -0
  1216. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Rangoon +0 -0
  1217. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Riyadh +0 -0
  1218. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Saigon +0 -0
  1219. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Sakhalin +0 -0
  1220. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Samarkand +0 -0
  1221. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Seoul +0 -0
  1222. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Shanghai +0 -0
  1223. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Singapore +0 -0
  1224. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Srednekolymsk +0 -0
  1225. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Taipei +0 -0
  1226. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tashkent +0 -0
  1227. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tbilisi +0 -0
  1228. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tehran +0 -0
  1229. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tel_Aviv +0 -0
  1230. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Thimbu +0 -0
  1231. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Thimphu +0 -0
  1232. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tokyo +0 -0
  1233. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Tomsk +0 -0
  1234. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ujung_Pandang +0 -0
  1235. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ulaanbaatar +0 -0
  1236. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ulan_Bator +0 -0
  1237. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Urumqi +0 -0
  1238. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Ust-Nera +0 -0
  1239. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Vientiane +0 -0
  1240. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Vladivostok +0 -0
  1241. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Yakutsk +0 -0
  1242. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Yangon +0 -0
  1243. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Yekaterinburg +0 -0
  1244. package/dist/vfs/usr/lib/R/share/zoneinfo/Asia/Yerevan +0 -0
  1245. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Azores +0 -0
  1246. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Bermuda +0 -0
  1247. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Canary +0 -0
  1248. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Cape_Verde +0 -0
  1249. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Faeroe +0 -0
  1250. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Faroe +0 -0
  1251. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Jan_Mayen +0 -0
  1252. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Madeira +0 -0
  1253. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Reykjavik +0 -0
  1254. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/South_Georgia +0 -0
  1255. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/St_Helena +0 -0
  1256. package/dist/vfs/usr/lib/R/share/zoneinfo/Atlantic/Stanley +0 -0
  1257. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/ACT +0 -0
  1258. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Adelaide +0 -0
  1259. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Brisbane +0 -0
  1260. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Broken_Hill +0 -0
  1261. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Canberra +0 -0
  1262. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Currie +0 -0
  1263. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Darwin +0 -0
  1264. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Eucla +0 -0
  1265. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Hobart +0 -0
  1266. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/LHI +0 -0
  1267. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Lindeman +0 -0
  1268. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Lord_Howe +0 -0
  1269. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Melbourne +0 -0
  1270. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/NSW +0 -0
  1271. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/North +0 -0
  1272. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Perth +0 -0
  1273. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Queensland +0 -0
  1274. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/South +0 -0
  1275. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Sydney +0 -0
  1276. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Tasmania +0 -0
  1277. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Victoria +0 -0
  1278. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/West +0 -0
  1279. package/dist/vfs/usr/lib/R/share/zoneinfo/Australia/Yancowinna +0 -0
  1280. package/dist/vfs/usr/lib/R/share/zoneinfo/Brazil/Acre +0 -0
  1281. package/dist/vfs/usr/lib/R/share/zoneinfo/Brazil/DeNoronha +0 -0
  1282. package/dist/vfs/usr/lib/R/share/zoneinfo/Brazil/East +0 -0
  1283. package/dist/vfs/usr/lib/R/share/zoneinfo/Brazil/West +0 -0
  1284. package/dist/vfs/usr/lib/R/share/zoneinfo/CET +0 -0
  1285. package/dist/vfs/usr/lib/R/share/zoneinfo/CST6CDT +0 -0
  1286. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Atlantic +0 -0
  1287. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Central +0 -0
  1288. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Eastern +0 -0
  1289. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Mountain +0 -0
  1290. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Newfoundland +0 -0
  1291. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Pacific +0 -0
  1292. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Saskatchewan +0 -0
  1293. package/dist/vfs/usr/lib/R/share/zoneinfo/Canada/Yukon +0 -0
  1294. package/dist/vfs/usr/lib/R/share/zoneinfo/Chile/Continental +0 -0
  1295. package/dist/vfs/usr/lib/R/share/zoneinfo/Chile/EasterIsland +0 -0
  1296. package/dist/vfs/usr/lib/R/share/zoneinfo/Cuba +0 -0
  1297. package/dist/vfs/usr/lib/R/share/zoneinfo/EET +0 -0
  1298. package/dist/vfs/usr/lib/R/share/zoneinfo/EST +0 -0
  1299. package/dist/vfs/usr/lib/R/share/zoneinfo/EST5EDT +0 -0
  1300. package/dist/vfs/usr/lib/R/share/zoneinfo/Egypt +0 -0
  1301. package/dist/vfs/usr/lib/R/share/zoneinfo/Eire +0 -0
  1302. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT +0 -0
  1303. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+0 +0 -0
  1304. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+1 +0 -0
  1305. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+10 +0 -0
  1306. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+11 +0 -0
  1307. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+12 +0 -0
  1308. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+2 +0 -0
  1309. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+3 +0 -0
  1310. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+4 +0 -0
  1311. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+5 +0 -0
  1312. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+6 +0 -0
  1313. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+7 +0 -0
  1314. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+8 +0 -0
  1315. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT+9 +0 -0
  1316. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-0 +0 -0
  1317. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-1 +0 -0
  1318. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-10 +0 -0
  1319. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-11 +0 -0
  1320. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-12 +0 -0
  1321. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-13 +0 -0
  1322. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-14 +0 -0
  1323. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-2 +0 -0
  1324. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-3 +0 -0
  1325. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-4 +0 -0
  1326. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-5 +0 -0
  1327. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-6 +0 -0
  1328. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-7 +0 -0
  1329. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-8 +0 -0
  1330. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT-9 +0 -0
  1331. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/GMT0 +0 -0
  1332. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/Greenwich +0 -0
  1333. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/UCT +0 -0
  1334. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/UTC +0 -0
  1335. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/Universal +0 -0
  1336. package/dist/vfs/usr/lib/R/share/zoneinfo/Etc/Zulu +0 -0
  1337. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Amsterdam +0 -0
  1338. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Andorra +0 -0
  1339. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Astrakhan +0 -0
  1340. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Athens +0 -0
  1341. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Belfast +0 -0
  1342. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Belgrade +0 -0
  1343. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Berlin +0 -0
  1344. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Bratislava +0 -0
  1345. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Brussels +0 -0
  1346. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Bucharest +0 -0
  1347. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Budapest +0 -0
  1348. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Busingen +0 -0
  1349. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Chisinau +0 -0
  1350. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Copenhagen +0 -0
  1351. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Dublin +0 -0
  1352. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Gibraltar +0 -0
  1353. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Guernsey +0 -0
  1354. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Helsinki +0 -0
  1355. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Isle_of_Man +0 -0
  1356. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Istanbul +0 -0
  1357. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Jersey +0 -0
  1358. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Kaliningrad +0 -0
  1359. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Kiev +0 -0
  1360. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Kirov +0 -0
  1361. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Kyiv +0 -0
  1362. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Lisbon +0 -0
  1363. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Ljubljana +0 -0
  1364. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/London +0 -0
  1365. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Luxembourg +0 -0
  1366. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Madrid +0 -0
  1367. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Malta +0 -0
  1368. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Mariehamn +0 -0
  1369. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Minsk +0 -0
  1370. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Monaco +0 -0
  1371. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Moscow +0 -0
  1372. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Nicosia +0 -0
  1373. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Oslo +0 -0
  1374. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Paris +0 -0
  1375. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Podgorica +0 -0
  1376. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Prague +0 -0
  1377. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Riga +0 -0
  1378. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Rome +0 -0
  1379. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Samara +0 -0
  1380. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/San_Marino +0 -0
  1381. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Sarajevo +0 -0
  1382. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Saratov +0 -0
  1383. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Simferopol +0 -0
  1384. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Skopje +0 -0
  1385. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Sofia +0 -0
  1386. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Stockholm +0 -0
  1387. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Tallinn +0 -0
  1388. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Tirane +0 -0
  1389. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Tiraspol +0 -0
  1390. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Ulyanovsk +0 -0
  1391. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Uzhgorod +0 -0
  1392. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Vaduz +0 -0
  1393. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Vatican +0 -0
  1394. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Vienna +0 -0
  1395. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Vilnius +0 -0
  1396. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Volgograd +0 -0
  1397. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Warsaw +0 -0
  1398. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Zagreb +0 -0
  1399. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Zaporozhye +0 -0
  1400. package/dist/vfs/usr/lib/R/share/zoneinfo/Europe/Zurich +0 -0
  1401. package/dist/vfs/usr/lib/R/share/zoneinfo/GB +0 -0
  1402. package/dist/vfs/usr/lib/R/share/zoneinfo/GB-Eire +0 -0
  1403. package/dist/vfs/usr/lib/R/share/zoneinfo/GMT +0 -0
  1404. package/dist/vfs/usr/lib/R/share/zoneinfo/GMT+0 +0 -0
  1405. package/dist/vfs/usr/lib/R/share/zoneinfo/GMT-0 +0 -0
  1406. package/dist/vfs/usr/lib/R/share/zoneinfo/GMT0 +0 -0
  1407. package/dist/vfs/usr/lib/R/share/zoneinfo/Greenwich +0 -0
  1408. package/dist/vfs/usr/lib/R/share/zoneinfo/HST +0 -0
  1409. package/dist/vfs/usr/lib/R/share/zoneinfo/Hongkong +0 -0
  1410. package/dist/vfs/usr/lib/R/share/zoneinfo/Iceland +0 -0
  1411. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Antananarivo +0 -0
  1412. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Chagos +0 -0
  1413. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Christmas +0 -0
  1414. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Cocos +0 -0
  1415. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Comoro +0 -0
  1416. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Kerguelen +0 -0
  1417. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Mahe +0 -0
  1418. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Maldives +0 -0
  1419. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Mauritius +0 -0
  1420. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Mayotte +0 -0
  1421. package/dist/vfs/usr/lib/R/share/zoneinfo/Indian/Reunion +0 -0
  1422. package/dist/vfs/usr/lib/R/share/zoneinfo/Iran +0 -0
  1423. package/dist/vfs/usr/lib/R/share/zoneinfo/Israel +0 -0
  1424. package/dist/vfs/usr/lib/R/share/zoneinfo/Jamaica +0 -0
  1425. package/dist/vfs/usr/lib/R/share/zoneinfo/Japan +0 -0
  1426. package/dist/vfs/usr/lib/R/share/zoneinfo/Kwajalein +0 -0
  1427. package/dist/vfs/usr/lib/R/share/zoneinfo/Libya +0 -0
  1428. package/dist/vfs/usr/lib/R/share/zoneinfo/MET +0 -0
  1429. package/dist/vfs/usr/lib/R/share/zoneinfo/MST +0 -0
  1430. package/dist/vfs/usr/lib/R/share/zoneinfo/MST7MDT +0 -0
  1431. package/dist/vfs/usr/lib/R/share/zoneinfo/Mexico/BajaNorte +0 -0
  1432. package/dist/vfs/usr/lib/R/share/zoneinfo/Mexico/BajaSur +0 -0
  1433. package/dist/vfs/usr/lib/R/share/zoneinfo/Mexico/General +0 -0
  1434. package/dist/vfs/usr/lib/R/share/zoneinfo/NZ +0 -0
  1435. package/dist/vfs/usr/lib/R/share/zoneinfo/NZ-CHAT +0 -0
  1436. package/dist/vfs/usr/lib/R/share/zoneinfo/Navajo +0 -0
  1437. package/dist/vfs/usr/lib/R/share/zoneinfo/PRC +0 -0
  1438. package/dist/vfs/usr/lib/R/share/zoneinfo/PST8PDT +0 -0
  1439. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Apia +0 -0
  1440. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Auckland +0 -0
  1441. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Bougainville +0 -0
  1442. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Chatham +0 -0
  1443. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Chuuk +0 -0
  1444. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Easter +0 -0
  1445. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Efate +0 -0
  1446. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Enderbury +0 -0
  1447. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Fakaofo +0 -0
  1448. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Fiji +0 -0
  1449. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Funafuti +0 -0
  1450. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Galapagos +0 -0
  1451. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Gambier +0 -0
  1452. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Guadalcanal +0 -0
  1453. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Guam +0 -0
  1454. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Honolulu +0 -0
  1455. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Johnston +0 -0
  1456. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Kanton +0 -0
  1457. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Kiritimati +0 -0
  1458. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Kosrae +0 -0
  1459. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Kwajalein +0 -0
  1460. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Majuro +0 -0
  1461. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Marquesas +0 -0
  1462. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Midway +0 -0
  1463. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Nauru +0 -0
  1464. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Niue +0 -0
  1465. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Norfolk +0 -0
  1466. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Noumea +0 -0
  1467. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Pago_Pago +0 -0
  1468. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Palau +0 -0
  1469. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Pitcairn +0 -0
  1470. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Pohnpei +0 -0
  1471. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Ponape +0 -0
  1472. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Port_Moresby +0 -0
  1473. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Rarotonga +0 -0
  1474. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Saipan +0 -0
  1475. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Samoa +0 -0
  1476. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Tahiti +0 -0
  1477. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Tarawa +0 -0
  1478. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Tongatapu +0 -0
  1479. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Truk +0 -0
  1480. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Wake +0 -0
  1481. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Wallis +0 -0
  1482. package/dist/vfs/usr/lib/R/share/zoneinfo/Pacific/Yap +0 -0
  1483. package/dist/vfs/usr/lib/R/share/zoneinfo/Poland +0 -0
  1484. package/dist/vfs/usr/lib/R/share/zoneinfo/Portugal +0 -0
  1485. package/dist/vfs/usr/lib/R/share/zoneinfo/ROC +0 -0
  1486. package/dist/vfs/usr/lib/R/share/zoneinfo/ROK +0 -0
  1487. package/dist/vfs/usr/lib/R/share/zoneinfo/Singapore +0 -0
  1488. package/dist/vfs/usr/lib/R/share/zoneinfo/Turkey +0 -0
  1489. package/dist/vfs/usr/lib/R/share/zoneinfo/UCT +0 -0
  1490. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Alaska +0 -0
  1491. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Aleutian +0 -0
  1492. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Arizona +0 -0
  1493. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Central +0 -0
  1494. package/dist/vfs/usr/lib/R/share/zoneinfo/US/East-Indiana +0 -0
  1495. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Eastern +0 -0
  1496. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Hawaii +0 -0
  1497. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Indiana-Starke +0 -0
  1498. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Michigan +0 -0
  1499. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Mountain +0 -0
  1500. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Pacific +0 -0
  1501. package/dist/vfs/usr/lib/R/share/zoneinfo/US/Samoa +0 -0
  1502. package/dist/vfs/usr/lib/R/share/zoneinfo/UTC +0 -0
  1503. package/dist/vfs/usr/lib/R/share/zoneinfo/Universal +0 -0
  1504. package/dist/vfs/usr/lib/R/share/zoneinfo/VERSION +1 -0
  1505. package/dist/vfs/usr/lib/R/share/zoneinfo/W-SU +0 -0
  1506. package/dist/vfs/usr/lib/R/share/zoneinfo/WET +0 -0
  1507. package/dist/vfs/usr/lib/R/share/zoneinfo/Zulu +0 -0
  1508. package/dist/vfs/usr/lib/R/share/zoneinfo/iso3166.tab +274 -0
  1509. package/dist/vfs/usr/lib/R/share/zoneinfo/zone.tab +448 -0
  1510. package/dist/vfs/usr/lib/R/share/zoneinfo/zone1970.tab +374 -0
  1511. package/dist/vfs/usr/lib/R/tests/CRANtools.R +35 -0
  1512. package/dist/vfs/usr/lib/R/tests/EmbeddedNuls.csv +0 -0
  1513. package/dist/vfs/usr/lib/R/tests/Examples/datasets-Ex.Rout.save +3602 -0
  1514. package/dist/vfs/usr/lib/R/tests/Examples/grDevices-Ex.Rout.save +4379 -0
  1515. package/dist/vfs/usr/lib/R/tests/Examples/graphics-Ex.Rout.save +3237 -0
  1516. package/dist/vfs/usr/lib/R/tests/Examples/grid-Ex.Rout.save +2458 -0
  1517. package/dist/vfs/usr/lib/R/tests/Examples/splines-Ex.Rout.save +599 -0
  1518. package/dist/vfs/usr/lib/R/tests/Examples/stats-Ex.Rout.save +19391 -0
  1519. package/dist/vfs/usr/lib/R/tests/Examples/stats4-Ex.Rout.save +340 -0
  1520. package/dist/vfs/usr/lib/R/tests/Examples/tools-Ex.Rout.save +1125 -0
  1521. package/dist/vfs/usr/lib/R/tests/Makefile +76 -0
  1522. package/dist/vfs/usr/lib/R/tests/Makefile.common +529 -0
  1523. package/dist/vfs/usr/lib/R/tests/PCRE.R +123 -0
  1524. package/dist/vfs/usr/lib/R/tests/README +117 -0
  1525. package/dist/vfs/usr/lib/R/tests/WinUnicode.dat +0 -0
  1526. package/dist/vfs/usr/lib/R/tests/any-all.R +93 -0
  1527. package/dist/vfs/usr/lib/R/tests/any-all.Rout.save +111 -0
  1528. package/dist/vfs/usr/lib/R/tests/arima.rda +0 -0
  1529. package/dist/vfs/usr/lib/R/tests/arith-true.R +220 -0
  1530. package/dist/vfs/usr/lib/R/tests/arith-true.Rout.save +327 -0
  1531. package/dist/vfs/usr/lib/R/tests/arith.R +26 -0
  1532. package/dist/vfs/usr/lib/R/tests/arith.Rout.save +88 -0
  1533. package/dist/vfs/usr/lib/R/tests/array-subset.R +86 -0
  1534. package/dist/vfs/usr/lib/R/tests/complex.R +159 -0
  1535. package/dist/vfs/usr/lib/R/tests/complex.Rout.save +297 -0
  1536. package/dist/vfs/usr/lib/R/tests/conditions.R +155 -0
  1537. package/dist/vfs/usr/lib/R/tests/d-p-q-r-tests.R +504 -0
  1538. package/dist/vfs/usr/lib/R/tests/d-p-q-r-tests.Rout.save +884 -0
  1539. package/dist/vfs/usr/lib/R/tests/d-p-q-r-tst-2.R +829 -0
  1540. package/dist/vfs/usr/lib/R/tests/datasets.R +9 -0
  1541. package/dist/vfs/usr/lib/R/tests/datasets.Rout.save +669 -0
  1542. package/dist/vfs/usr/lib/R/tests/datetime.R +43 -0
  1543. package/dist/vfs/usr/lib/R/tests/datetime.Rout.save +81 -0
  1544. package/dist/vfs/usr/lib/R/tests/datetime2.R +150 -0
  1545. package/dist/vfs/usr/lib/R/tests/datetime2.Rout.save +529 -0
  1546. package/dist/vfs/usr/lib/R/tests/datetime3.R +535 -0
  1547. package/dist/vfs/usr/lib/R/tests/datetime4.R +94 -0
  1548. package/dist/vfs/usr/lib/R/tests/datetime4.Rout.save +386 -0
  1549. package/dist/vfs/usr/lib/R/tests/datetime5.R +30 -0
  1550. package/dist/vfs/usr/lib/R/tests/datetime5.Rout.save +92 -0
  1551. package/dist/vfs/usr/lib/R/tests/demos.R +30 -0
  1552. package/dist/vfs/usr/lib/R/tests/demos.Rout.save +1642 -0
  1553. package/dist/vfs/usr/lib/R/tests/demos2.R +9 -0
  1554. package/dist/vfs/usr/lib/R/tests/encodings.R +27 -0
  1555. package/dist/vfs/usr/lib/R/tests/eval-etc.R +234 -0
  1556. package/dist/vfs/usr/lib/R/tests/eval-etc.Rout.save +1014 -0
  1557. package/dist/vfs/usr/lib/R/tests/eval-fns.R +99 -0
  1558. package/dist/vfs/usr/lib/R/tests/iconv.R +35 -0
  1559. package/dist/vfs/usr/lib/R/tests/iec60559.R +18 -0
  1560. package/dist/vfs/usr/lib/R/tests/iec60559.Rout.save +60 -0
  1561. package/dist/vfs/usr/lib/R/tests/internet.R +20 -0
  1562. package/dist/vfs/usr/lib/R/tests/internet.Rout.save +164 -0
  1563. package/dist/vfs/usr/lib/R/tests/internet2.R +69 -0
  1564. package/dist/vfs/usr/lib/R/tests/isas-tests.Rin +60 -0
  1565. package/dist/vfs/usr/lib/R/tests/isas-tests.Rout.save +2598 -0
  1566. package/dist/vfs/usr/lib/R/tests/lapack.R +175 -0
  1567. package/dist/vfs/usr/lib/R/tests/lapack.Rout.save +435 -0
  1568. package/dist/vfs/usr/lib/R/tests/libcurl.R +88 -0
  1569. package/dist/vfs/usr/lib/R/tests/lm-tests.R +101 -0
  1570. package/dist/vfs/usr/lib/R/tests/lm-tests.Rout.save +414 -0
  1571. package/dist/vfs/usr/lib/R/tests/method-dispatch.R +157 -0
  1572. package/dist/vfs/usr/lib/R/tests/method-dispatch.Rout.save +222 -0
  1573. package/dist/vfs/usr/lib/R/tests/nanbug.rda +0 -0
  1574. package/dist/vfs/usr/lib/R/tests/no-segfault.Rin +143 -0
  1575. package/dist/vfs/usr/lib/R/tests/ok-errors.R +24 -0
  1576. package/dist/vfs/usr/lib/R/tests/ok-errors.Rout.save +44 -0
  1577. package/dist/vfs/usr/lib/R/tests/p-qbeta-strict-tst.R +595 -0
  1578. package/dist/vfs/usr/lib/R/tests/p-r-random-tests.R +181 -0
  1579. package/dist/vfs/usr/lib/R/tests/p-r-random-tests.Rout.save +326 -0
  1580. package/dist/vfs/usr/lib/R/tests/primitives.R +146 -0
  1581. package/dist/vfs/usr/lib/R/tests/print-tests.R +343 -0
  1582. package/dist/vfs/usr/lib/R/tests/print-tests.Rout.save +946 -0
  1583. package/dist/vfs/usr/lib/R/tests/r-strict-tst.R +57 -0
  1584. package/dist/vfs/usr/lib/R/tests/reg-BLAS.R +135 -0
  1585. package/dist/vfs/usr/lib/R/tests/reg-IO.R +60 -0
  1586. package/dist/vfs/usr/lib/R/tests/reg-IO.Rout.save +176 -0
  1587. package/dist/vfs/usr/lib/R/tests/reg-IO2.R +124 -0
  1588. package/dist/vfs/usr/lib/R/tests/reg-IO2.Rout.save +252 -0
  1589. package/dist/vfs/usr/lib/R/tests/reg-S4-examples.R +357 -0
  1590. package/dist/vfs/usr/lib/R/tests/reg-S4.R +1024 -0
  1591. package/dist/vfs/usr/lib/R/tests/reg-S4.Rout.save +1365 -0
  1592. package/dist/vfs/usr/lib/R/tests/reg-examples1.R +92 -0
  1593. package/dist/vfs/usr/lib/R/tests/reg-examples2.R +38 -0
  1594. package/dist/vfs/usr/lib/R/tests/reg-examples3.Rout.save +546 -0
  1595. package/dist/vfs/usr/lib/R/tests/reg-packages.R +559 -0
  1596. package/dist/vfs/usr/lib/R/tests/reg-plot-latin1.R +6 -0
  1597. package/dist/vfs/usr/lib/R/tests/reg-plot-latin1.pdf.save +649 -0
  1598. package/dist/vfs/usr/lib/R/tests/reg-plot.R +298 -0
  1599. package/dist/vfs/usr/lib/R/tests/reg-plot.pdf.save +11498 -0
  1600. package/dist/vfs/usr/lib/R/tests/reg-tests-1a.R +4898 -0
  1601. package/dist/vfs/usr/lib/R/tests/reg-tests-1b.R +2120 -0
  1602. package/dist/vfs/usr/lib/R/tests/reg-tests-1c.R +1631 -0
  1603. package/dist/vfs/usr/lib/R/tests/reg-tests-1d.R +5797 -0
  1604. package/dist/vfs/usr/lib/R/tests/reg-tests-1e.R +557 -0
  1605. package/dist/vfs/usr/lib/R/tests/reg-tests-2.R +3370 -0
  1606. package/dist/vfs/usr/lib/R/tests/reg-tests-2.Rout.save +8317 -0
  1607. package/dist/vfs/usr/lib/R/tests/reg-tests-3.Rout.save +1075 -0
  1608. package/dist/vfs/usr/lib/R/tests/reg-translation.R +125 -0
  1609. package/dist/vfs/usr/lib/R/tests/simple-true.R +190 -0
  1610. package/dist/vfs/usr/lib/R/tests/simple-true.Rout.save +300 -0
  1611. package/dist/vfs/usr/lib/R/tests/structure.R +48 -0
  1612. package/dist/vfs/usr/lib/R/tests/structure.Rout.save +88 -0
  1613. package/dist/vfs/usr/lib/R/tests/timezone.R +9 -0
  1614. package/dist/vfs/usr/lib/R/tests/utf8-regex.R +373 -0
  1615. package/dist/webR/chan/channel-common.d.ts +19 -0
  1616. package/dist/webR/chan/channel-service.d.ts +30 -0
  1617. package/dist/webR/chan/channel-shared.d.ts +24 -0
  1618. package/dist/webR/chan/channel.d.ts +43 -0
  1619. package/dist/webR/chan/message.d.ts +50 -0
  1620. package/dist/webR/chan/queue.d.ts +17 -0
  1621. package/dist/webR/chan/serviceworker.d.ts +6 -0
  1622. package/dist/webR/chan/task-common.d.ts +17 -0
  1623. package/dist/webR/chan/task-main.d.ts +15 -0
  1624. package/dist/webR/chan/task-worker.d.ts +42 -0
  1625. package/dist/webR/compat.d.ts +2 -0
  1626. package/dist/webR/config.d.ts +2 -0
  1627. package/dist/webR/console.d.ts +68 -0
  1628. package/dist/webR/emscripten.d.ts +126 -0
  1629. package/dist/webR/payload.d.ts +47 -0
  1630. package/dist/webR/proxy.d.ts +115 -0
  1631. package/dist/webR/robj-main.d.ts +112 -0
  1632. package/dist/webR/robj-worker.d.ts +225 -0
  1633. package/dist/webR/robj.d.ts +113 -0
  1634. package/dist/webR/utils-r.d.ts +25 -0
  1635. package/dist/webR/utils.d.ts +12 -0
  1636. package/dist/webR/webr-chan.d.ts +141 -0
  1637. package/dist/webR/webr-main.d.ts +282 -0
  1638. package/dist/webR/webr-worker.d.ts +1 -0
  1639. package/dist/webr-serviceworker.js +1654 -0
  1640. package/dist/webr-serviceworker.js.map +7 -0
  1641. package/dist/webr-serviceworker.mjs +1658 -0
  1642. package/dist/webr-serviceworker.mjs.map +7 -0
  1643. package/dist/webr-worker.js +4546 -0
  1644. package/dist/webr-worker.js.map +7 -0
  1645. package/dist/webr.cjs +4 -0
  1646. package/dist/webr.cjs.map +7 -0
  1647. package/dist/webr.mjs +4 -0
  1648. package/dist/webr.mjs.map +7 -0
  1649. package/package.json +1 -1
@@ -0,0 +1,4898 @@
1
+ ## Up to PR#9999 for R < 3.0.0
2
+
3
+ pdf("reg-tests-1a.pdf", encoding = "ISOLatin1.enc")
4
+
5
+ ## force standard handling for data frames
6
+ options(stringsAsFactors=FALSE) # R >= 4.0.0
7
+ ## .Machine
8
+ (Meps <- .Machine$double.eps)# and use it in this file
9
+ ## Facilitate diagnosing of testing startup:
10
+ envLst <- c(t(outer(c("R_ENVIRON","R_PROFILE"), c("","_USER"), paste0)),
11
+ "R_CHECK_ENVIRON","R_LIBS")
12
+ cbind(Sys.getenv(envLst))
13
+ .libPaths()
14
+
15
+ (have_cat <- nzchar(Sys.which("cat")))
16
+ assertError <- tools::assertError
17
+
18
+ ## regression test for PR#376
19
+ aggregate(ts(1:20), nfreq=1/3)
20
+ ## Comments: moved from aggregate.Rd
21
+
22
+
23
+ ## aperm
24
+ # check the names
25
+ x <- array(1:24, c(4, 6))
26
+ nms <- list(happy=letters[1:4], sad=LETTERS[1:6])
27
+
28
+ dimnames(x) <- nms
29
+ tmp <- aperm(x, c(2, 1))
30
+ stopifnot(all.equal(dimnames(tmp), nms[c(2, 1)]))
31
+
32
+ dimnames(x) <- c(nms[1], list(NULL))
33
+ tmp <- aperm(x, c(2, 1))
34
+ stopifnot(all.equal(dimnames(tmp), c(list(NULL), nms[1])))
35
+
36
+ names(nms) <- c("happy", "sad")
37
+ dimnames(x) <- nms
38
+ tmp <- aperm(x, c(2, 1))
39
+ stopifnot(all.equal(names(dimnames(tmp)), names(nms[c(2, 1)])))
40
+
41
+ dimnames(x) <- c(nms[1], list(NULL))
42
+ tmp <- aperm(x, c(2, 1))
43
+ stopifnot(all.equal(names(dimnames(tmp)), c("", names(nms)[1])))
44
+
45
+ # check resize
46
+ stopifnot(dim(aperm(x, c(2, 1), FALSE)) == dim(x))
47
+ stopifnot(is.null(dimnames(aperm(x, c(2, 1), FALSE))))
48
+
49
+ # check the types
50
+ x <- array(1:24, c(4, 6))
51
+ stopifnot(all.equal(aperm(x, c(2, 1)), t(x)))
52
+ stopifnot(is.integer(aperm(x, c(2, 1))))
53
+
54
+ x <- x + 0.0
55
+ stopifnot(all.equal(aperm(x, c(2, 1)), t(x)))
56
+ stopifnot(is.double(aperm(x, c(2, 1))))
57
+
58
+ x <- x + 0.0i
59
+ stopifnot(all.equal(aperm(x, c(2, 1)), t(x)))
60
+
61
+ x[] <- LETTERS[1:24]
62
+ stopifnot(all.equal(aperm(x, c(2, 1)), t(x)))
63
+
64
+ x <- array(list("fred"), c(4, 6))
65
+ x[[3, 4]] <- 1:10
66
+ stopifnot(all.equal(aperm(x, c(2, 1)), t(x)))
67
+ ## end of moved from aperm.Rd
68
+
69
+
70
+ ## append
71
+ stopifnot(append(1:5, 0:1, after=3) == append(1:3, c(0:1, 4:5)))
72
+ ## end of moved from append.Rd
73
+
74
+
75
+ ## array
76
+ # funny object, but whatever was the point of that?
77
+ utils::str(array(1:3, 0))
78
+ ## end of moved from array.Rd
79
+
80
+
81
+ ## as.POSIXlt
82
+ z <- Sys.time()
83
+ stopifnot(range(z) == z,
84
+ min(z) == z,
85
+ max(z) == z,
86
+ mean(z) == z)
87
+ ## end of moved from as.POSIXlt.Rd
88
+
89
+
90
+ ## autoload
91
+ stopifnot(ls("Autoloads") == ls(envir = .AutoloadEnv), allow.logical0=TRUE)
92
+ ## end of moved from autoload.Rd
93
+
94
+
95
+ ## axis
96
+ Y <- c(10.50, 4.0, 13.75, 7.25)
97
+ plot(1:4, Y, xlim=c(0,5), ylim=c(0,15))
98
+ axis(side=4, at=Y, labels=LETTERS[1:4])
99
+ ## end of moved from axis.Rd
100
+
101
+
102
+ ## backsolve
103
+ r <- rbind(c(1,2,3),
104
+ c(0,1,1),
105
+ c(0,0,2))
106
+ ( y <- backsolve(r, x <- c(8,4,2)) ) # -1 3 1
107
+ r %*% y # == x = (8,4,2)
108
+ ( y2 <- backsolve(r, x, transpose = TRUE)) # 8 -12 -5
109
+ stopifnot(all.equal(drop(t(r) %*% y2), x))
110
+ stopifnot(all.equal(y, backsolve(t(r), x, upper = FALSE, transpose = TRUE)))
111
+ stopifnot(all.equal(y2, backsolve(t(r), x, upper = FALSE, transpose = FALSE)))
112
+ ## end of moved from backsolve.Rd
113
+
114
+
115
+ ## basename
116
+ dirname(character(0))
117
+ ## end of moved from basename.Rd
118
+
119
+
120
+ ## Bessel
121
+ ## Check the Scaling :
122
+ nus <- c(0:5,10,20)
123
+ x <- seq(0,40,len=801)[-1]
124
+ for(nu in nus)
125
+ stopifnot(abs(1- besselK(x,nu)*exp( x) / besselK(x,nu,expo=TRUE)) < 2e-15)
126
+ for(nu in nus)
127
+ stopifnot(abs(1- besselI(x,nu)*exp(-x) / besselI(x,nu,expo=TRUE)) < 1e-15)
128
+ ## end of moved from Bessel.Rd
129
+
130
+
131
+ ## c
132
+ ll <- list(A = 1, c="C")
133
+ stopifnot(identical(c(ll, d=1:3), c(ll, as.list(c(d=1:3)))))
134
+ ## moved from c.Rd
135
+
136
+
137
+ ## Cauchy
138
+ stopifnot(all.equal(dcauchy(-1:4), 1 / (pi*(1 + (-1:4)^2))))
139
+ ## end of moved from Cauchy.Rd
140
+
141
+
142
+ ## chol
143
+ ( m <- matrix(c(5,1,1,3),2,2) )
144
+ ( cm <- chol(m) )
145
+ stopifnot(abs(m - t(cm) %*% cm) < 100* Meps)
146
+
147
+ ## check with pivoting
148
+ ( m <- matrix(c(5,1,1,3),2,2) )
149
+ ( cm <- chol(m, TRUE) )
150
+ stopifnot(abs(m - t(cm) %*% cm) < 100* Meps)
151
+
152
+ x <- matrix(c(1:5, (1:5)^2), 5, 2)
153
+ m <- crossprod(x)
154
+ Q <- chol(m)
155
+ stopifnot(all.equal(t(Q) %*% Q, m))
156
+
157
+ Q <- chol(m, pivot = TRUE)
158
+ pivot <- attr(Q, "pivot")
159
+ oo <- order(pivot)
160
+ stopifnot(all.equal(t(Q[, oo]) %*% Q[, oo], m))
161
+ stopifnot(all.equal(t(Q) %*% Q, m[pivot, pivot]))
162
+
163
+ # now for something positive semi-definite
164
+ x <- cbind(x, x[, 1]+3*x[, 2])
165
+ m <- crossprod(x)
166
+ qr(m)$rank # is 2, as it should be
167
+
168
+ (Q <- chol(m, pivot = TRUE)) # NB wrong rank here ... see Warning section.
169
+ pivot <- attr(Q, "pivot")
170
+ oo <- order(pivot)
171
+ stopifnot(all.equal(t(Q[, oo]) %*% Q[, oo], m))
172
+ stopifnot(all.equal(t(Q) %*% Q, m[pivot, pivot]))
173
+ ## end of moved from chol.Rd
174
+
175
+
176
+ ## chol2inv
177
+ cma <- chol(ma <- cbind(1, 1:3, c(1,3,7)))
178
+ stopifnot(all.equal(diag(3), ma %*% chol2inv(cma)))
179
+ ## end of moved from chol2inv.Rd
180
+
181
+
182
+ ## col2rgb
183
+ pp <- palette(); names(pp) <- pp # add & use names :
184
+ stopifnot(col2rgb(1:8) == print(col2rgb(pp)))
185
+ stopifnot(col2rgb("#08a0ff") == c(8, 160, 255))
186
+ grC <- col2rgb(paste("gray",0:100,sep=""))
187
+ stopifnot(grC["red",] == grC["green",],
188
+ grC["red",] == grC["blue",],
189
+ grC["red", 1:4] == c(0,3,5,8))
190
+ ## end of moved from col2rgb.Rd
191
+
192
+
193
+ ## colnames
194
+ m0 <- matrix(NA, 4, 0)
195
+ rownames(m0, do.NULL = FALSE)
196
+ colnames(m0, do.NULL = FALSE)
197
+ ## end of moved from colnames.Rd
198
+
199
+
200
+ ## Constants
201
+ stopifnot(
202
+ nchar(letters) == 1,
203
+ month.abb == substr(month.name, 1, 3)
204
+ )
205
+
206
+ stopifnot(all.equal(pi, 4*atan(1), tol= 2*Meps))
207
+
208
+ # John Machin (1705) computed 100 decimals of pi :
209
+ stopifnot(all.equal(pi/4, 4*atan(1/5) - atan(1/239), 4*Meps))
210
+ ## end of moved from Constants.Rd
211
+
212
+
213
+ ## cor
214
+ stopifnot( is.na(var(1)),
215
+ !is.nan(var(1)))
216
+
217
+ zz <- c(-1.30167, -0.4957, -1.46749, 0.46927)
218
+ r <- cor(zz,zz); r - 1
219
+ stopifnot(r <= 1) # fails in R <= 1.3.x, for versions of Linux and Solaris
220
+ ## end of moved from cor.Rd
221
+ ## Spearman correlations ranked missing values at end <= 1.8.1
222
+ X <- cbind(c(1,3,4,NA),c(1,4,2,NA))
223
+ X1 <- X[-4,]
224
+ stopifnot(all.equal(cor(X,X,method="spearman",use="complete"),
225
+ cor(X1,X1,method="spearman",use="complete")))
226
+ stopifnot(all.equal(cov(X,X,method="spearman",use="complete"),
227
+ cov(X1,X1,method="spearman",use="complete")))
228
+
229
+ ## DateTimeClasses
230
+ (dls <- .leap.seconds[-1] - .leap.seconds[-length(.leap.seconds)])
231
+ table(dls)
232
+ stopifnot(sum(dls == 365) >= 11)
233
+ ## end of moved from DateTimeClasses.Rd
234
+
235
+
236
+ ## deriv
237
+ trig.exp <- expression(sin(cos(x + y^2)))
238
+ D.sc <- D(trig.exp, "x")
239
+ dxy <- deriv(trig.exp, c("x", "y"))
240
+ y <- 1
241
+ stopifnot(eval(D.sc) ==
242
+ attr(eval(dxy),"gradient")[,"x"])
243
+ ff <- y ~ sin(cos(x) * y)
244
+ stopifnot(all.equal(deriv(ff, c("x","y"), func = TRUE ),
245
+ deriv(ff, c("x","y"), func = function(x,y){ } )))
246
+ ## end of moved from deriv.Rd
247
+
248
+
249
+ ## diff
250
+ x <- cumsum(cumsum(1:10))
251
+ stopifnot(diff(x, lag = 2) == x[(1+2):10] - x[1:(10 - 2)],
252
+ diff(x, lag = 2) == (3:10)^2,
253
+ diff(diff(x)) == diff(x, differences = 2))
254
+ ## end of moved from diff.Rd
255
+
256
+
257
+ ## duplicated
258
+ x <- c(9:20, 1:5, 3:7, 0:8)
259
+ ## extract unique elements
260
+ (xu <- x[!duplicated(x)])
261
+ stopifnot(xu == unique(x), # but unique(x) is more efficient
262
+ 0:20 == sort(x[!duplicated(x)]))
263
+
264
+ stopifnot(duplicated(iris)[143] == TRUE)
265
+ ## end of moved from duplicated.Rd
266
+
267
+
268
+ ## eigen
269
+ set.seed(321, kind = "default") # force a particular seed
270
+ m <- matrix(round(rnorm(25),3), 5,5)
271
+ sm <- m + t(m) #- symmetric matrix
272
+ em <- eigen(sm); V <- em$vect
273
+ print(lam <- em$values) # ordered DEcreasingly
274
+
275
+ stopifnot(
276
+ abs(sm %*% V - V %*% diag(lam)) < 60*Meps,
277
+ abs(sm - V %*% diag(lam) %*% t(V)) < 60*Meps)
278
+
279
+ ##------- Symmetric = FALSE: -- different to above : ---
280
+
281
+ em <- eigen(sm, symmetric = FALSE); V2 <- em$vect
282
+ print(lam2 <- em$values) # ordered decreasingly in ABSolute value !
283
+ print(i <- rev(order(lam2)))
284
+ stopifnot(abs(lam - lam2[i]) < 100 * Meps) # comparing two solns
285
+
286
+ zapsmall(Diag <- t(V2) %*% V2)
287
+ stopifnot( abs(1- diag(Diag)) < 60*Meps)
288
+
289
+ stopifnot(abs(sm %*% V2 - V2 %*% diag(lam2)) < 60*Meps,
290
+ abs(sm - V2 %*% diag(lam2) %*% t(V2)) < 60*Meps)
291
+
292
+ ## Re-ordered as with symmetric:
293
+ sV <- V2[,i]
294
+ slam <- lam2[i]
295
+ stopifnot(abs(sm %*% sV - sV %*% diag(slam)) < 60*Meps)
296
+ stopifnot(abs(sm - sV %*% diag(slam) %*% t(sV)) < 60*Meps)
297
+ ## sV *is* now equal to V -- up to sign (+-) and rounding errors
298
+ stopifnot(abs(c(1 - abs(sV / V))) < 1000*Meps)
299
+ ## end of moved from eigen.Rd
300
+
301
+
302
+ ## euro
303
+ stopifnot(euro == signif(euro,6), euro.cross == outer(1/euro, euro))
304
+ ## end of moved from euro.Rd
305
+
306
+
307
+ ## Exponential
308
+ r <- rexp(100)
309
+ stopifnot(abs(1 - dexp(1, r) / (r*exp(-r))) < 1e-14)
310
+ ## end of moved from Exponential.Rd
311
+
312
+
313
+ ## family
314
+ gf <- Gamma()
315
+ stopifnot(1:10 == gf$linkfun(gf$linkinv(1:10)))
316
+ ## end of moved from family.Rd
317
+
318
+
319
+ ## fft
320
+ set.seed(123)
321
+ eps <- 1e-10 # typically see around 1e-11
322
+ for(N in 1:130) {
323
+ x <- rnorm(N)
324
+ if(N %% 5 == 0) {
325
+ m5 <- matrix(x,ncol=5)
326
+ stopifnot(apply(m5,2,fft) == mvfft(m5))
327
+ }
328
+ dd <- Mod(1 - (f2 <- fft(fft(x), inverse=TRUE)/(x*length(x))))
329
+ stopifnot(dd < eps)
330
+ }
331
+ ## end of moved from fft.Rd
332
+
333
+
334
+ ## findint
335
+ N <- 100
336
+ X <- sort(round(rt(N, df=2), 2))
337
+ tt <- c(-100, seq(-2,2, len=201), +100)
338
+ it <- findInterval(tt, X)
339
+
340
+ ## See that this is N * Fn(.) :
341
+ tt <- c(tt,X)
342
+ stopifnot(it[c(1,203)] == c(0, 100),
343
+ all.equal(N * stats::ecdf(X)(tt),
344
+ findInterval(tt, X), tol = 100 * Meps),
345
+ findInterval(tt,X) == apply( outer(tt, X, ">="), 1, sum)
346
+ )
347
+ ## end of moved from findint.Rd
348
+ ## NA & Inf's :
349
+ tt[ina <- c(2,3,5,7)] <- NA
350
+ tt[300] <- Inf
351
+ X <- c(-Inf, X, Inf)
352
+ it <- findInterval(tt,X)
353
+ stopifnot(identical(it, as.integer(rowSums(outer(tt, X, ">=")))),
354
+ is.na(it[ina]))
355
+
356
+
357
+ if (have_cat) {
358
+ ## fix
359
+ oo <- options(editor="cat") # not really changing anything
360
+ fix(pi)
361
+ if(!is.numeric(pi) || length(pi)!=1 ||
362
+ !is.null(attributes(pi)) || abs(pi - 3.1415) > 1e-4)
363
+ stop("OOPS: fix() is broken ...")
364
+ rm(pi); options(oo)
365
+ ## end of moved from fix.Rd
366
+ }
367
+
368
+
369
+ ## format
370
+ (dd <- sapply(1:10, function(i)paste((9:0)[1:i],collapse="")))
371
+ np <- nchar(pd <- prettyNum(dd, big.mark="'"))
372
+ stopifnot(sapply(0:2, function(m)
373
+ all(grep("'", substr(pd, 1, np - 4*m)) == (4+3*m):10)))
374
+ ## end of moved from format.Rd
375
+
376
+
377
+ ## Geometric
378
+ pp <- sort(c((1:9)/10, 1 - .2^(2:8)))
379
+ print(qg <- qgeom(pp, prob = .2))
380
+ ## test that qgeom is an inverse of pgeom
381
+ print(qg1 <- qgeom(pgeom(qg, prob=.2), prob =.2))
382
+ stopifnot(identical(qg, qg1))
383
+ ## moved from Geometric.Rd
384
+
385
+
386
+ ## glm
387
+ ## these are the same -- example from Jim Lindsey
388
+ y <- rnorm(20)
389
+ y1 <- y[-1]; y2 <- y[-20]
390
+ summary(g1 <- glm(y1 - y2 ~ 1))
391
+ summary(g2 <- glm(y1 ~ offset(y2)))
392
+ Eq <- function(x,y) all.equal(x,y, tol = 1e-12)
393
+ stopifnot(Eq(coef(g1), coef(g2)),
394
+ Eq(deviance(g1), deviance(g2)),
395
+ Eq(resid(g1), resid(g2)))
396
+ ## from logLik.glm.Rd
397
+ anorexia <-
398
+ structure(list(Treat = factor(c(2L, 2L, 2L, 2L, 2L, 2L, 2L,
399
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
400
+ 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
401
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
402
+ 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
403
+ 3L), labels = c("CBT", "Cont", "FT")), Prewt = c(80.7,
404
+ 89.4, 91.8, 74, 78.1, 88.3, 87.3, 75.1, 80.6, 78.4, 77.6, 88.7,
405
+ 81.3, 78.1, 70.5, 77.3, 85.2, 86, 84.1, 79.7, 85.5, 84.4, 79.6,
406
+ 77.5, 72.3, 89, 80.5, 84.9, 81.5, 82.6, 79.9, 88.7, 94.9, 76.3,
407
+ 81, 80.5, 85, 89.2, 81.3, 76.5, 70, 80.4, 83.3, 83, 87.7, 84.2,
408
+ 86.4, 76.5, 80.2, 87.8, 83.3, 79.7, 84.5, 80.8, 87.4, 83.8, 83.3,
409
+ 86, 82.5, 86.7, 79.6, 76.9, 94.2, 73.4, 80.5, 81.6, 82.1, 77.6,
410
+ 83.5, 89.9, 86, 87.3), Postwt = c(80.2, 80.1, 86.4, 86.3, 76.1,
411
+ 78.1, 75.1, 86.7, 73.5, 84.6, 77.4, 79.5, 89.6, 81.4, 81.8, 77.3,
412
+ 84.2, 75.4, 79.5, 73, 88.3, 84.7, 81.4, 81.2, 88.2, 78.8, 82.2,
413
+ 85.6, 81.4, 81.9, 76.4, 103.6, 98.4, 93.4, 73.4, 82.1, 96.7,
414
+ 95.3, 82.4, 72.5, 90.9, 71.3, 85.4, 81.6, 89.1, 83.9, 82.7, 75.7,
415
+ 82.6, 100.4, 85.2, 83.6, 84.6, 96.2, 86.7, 95.2, 94.3, 91.5,
416
+ 91.9, 100.3, 76.7, 76.8, 101.6, 94.9, 75.2, 77.8, 95.5, 90.7,
417
+ 92.5, 93.8, 91.7, 98)), names = c("Treat", "Prewt", "Postwt"
418
+ ), class = "data.frame", row.names = 1:72)
419
+ anorex.1 <- glm(Postwt ~ Prewt + Treat + offset(Prewt),
420
+ family = gaussian, data = anorexia)
421
+ summary(anorex.1)
422
+ Eq <- function(x,y) all.equal(x,y, tol = 1e-12)
423
+ stopifnot(Eq(AIC(anorex.1), anorex.1$aic),
424
+ Eq(AIC(g1), g1$aic),
425
+ Eq(AIC(g2), g2$aic))
426
+ ## next was wrong in 1.4.1
427
+ x <- 1:10
428
+ lmx <- logLik(lm(x ~ 1)); glmx <- logLik(glm(x ~ 1))
429
+ stopifnot(all.equal(as.vector(lmx), as.vector(glmx)),
430
+ all.equal(attr(lmx, 'df'), attr(glmx, 'df')))
431
+ ## end of moved from glm.Rd and logLik.glm.Rd
432
+
433
+
434
+ ## Hyperbolic
435
+ x <- seq(-3, 3, len=200)
436
+ stopifnot(
437
+ abs(cosh(x) - (exp(x) + exp(-x))/2) < 20*Meps,
438
+ abs(sinh(x) - (exp(x) - exp(-x))/2) < 20*Meps,
439
+ abs(tanh(x)*cosh(x) - sinh(x)) < 20*Meps
440
+ )
441
+
442
+ stopifnot(abs(asinh(sinh(x)) - x) < 20*Meps)
443
+ stopifnot(abs(acosh(cosh(x)) - abs(x)) < 1000*Meps) #- imprecise for small x
444
+ stopifnot(abs(atanh(tanh(x)) - x) < 100*Meps)
445
+
446
+ stopifnot(abs(asinh(x) - log(x + sqrt(x^2 + 1))) < 100*Meps)
447
+ cx <- cosh(x)
448
+ stopifnot(abs(acosh(cx) - log(cx + sqrt(cx^2 - 1))) < 1000*Meps)
449
+ ## end of moved from Hyperbolic.Rd
450
+
451
+
452
+ ## image
453
+ ## Degenerate, should still work
454
+ image(as.matrix(1))
455
+ image(matrix(pi,2,4))
456
+ x <- seq(0,1,len=100)
457
+ image(x, 1, matrix(x), col=heat.colors(10))
458
+ image(x, 1, matrix(x), col=heat.colors(10), oldstyle = TRUE)
459
+ image(x, 1, matrix(x), col=heat.colors(10), breaks = seq(0.1,1.1,len=11))
460
+ ## end of moved from image.Rd
461
+
462
+
463
+ ## integrate
464
+ (ii <- integrate(dnorm, -1.96, 1.96))
465
+ (i1 <- integrate(dnorm, -Inf, Inf))
466
+ stopifnot(all.equal(0.9500042097, ii$val, tol = ii$abs.err, scale=1),
467
+ all.equal( 1, i1$val, tol = i1$abs.err, scale=1))
468
+
469
+ integrand <- function(x) {1/((x+1)*sqrt(x))}
470
+ (ii <- integrate(integrand, lower = 0, upper = Inf, rel.tol = 1e-10))
471
+ stopifnot(all.equal(pi, ii$val, tol = ii$abs.err, scale=1))
472
+ ## end of moved from integrate.Rd
473
+
474
+
475
+ ## is.finite
476
+ ( weird.values <- c(-20.9/0, 1/0, 0/0, NA) )
477
+
478
+ Mmax <- .Machine$double.xmax
479
+ Mmin <- .Machine$double.xmin
480
+ ( X.val <- c(Mmin*c(2^(-10:3),1e5,1e10),
481
+ Mmax*c(1e-10,1e-5,2^(-3:0),1.001)) )
482
+ ( tst.val <- sort(c(X.val, weird.values), na.last = TRUE) )
483
+ ( x2 <- c(-1:1/0,pi,1,NA) )
484
+ ( z2 <- c(x2, 1+1i, Inf -Inf* 1i) )
485
+
486
+ is.inf <-
487
+ function(x) (is.numeric(x) || is.complex(x)) && !is.na(x) && !is.finite(x)
488
+
489
+ for(x in list(tst.val, x2, z2))
490
+ print(cbind(format(x), is.infinite=format(is.infinite(x))), quote=FALSE)
491
+
492
+ rbind(is.nan(tst.val),
493
+ is.na (tst.val))
494
+ tst.val [ is.nan(tst.val) != is.na(tst.val) ]
495
+
496
+ stopifnot(
497
+ is.na(0/0),
498
+ !is.na(Inf),
499
+ is.nan(0/0),
500
+
501
+ !is.nan(NA) && !is.infinite(NA) && !is.finite(NA),
502
+ is.nan(NaN) && !is.infinite(NaN) && !is.finite(NaN),
503
+ !is.nan(c(1,NA)),
504
+ c(FALSE,TRUE,FALSE) == is.nan(c (1,NaN,NA))
505
+ )
506
+ assertError(is.nan(list(1,NaN,NA))) #-> result allowed but varies in older versions
507
+
508
+
509
+ stopifnot(identical(lgamma(Inf), Inf))
510
+ stopifnot(identical(Inf + Inf, Inf))
511
+ stopifnot(identical(Inf - Inf, NaN))
512
+ stopifnot(identical((1/0) * (1/0), Inf))
513
+ stopifnot(identical((1/0) / (1/0), NaN))
514
+ stopifnot(identical(exp(-Inf), 0))
515
+ stopifnot(identical(log(0), -Inf))
516
+ stopifnot(identical((-1)/0, -Inf))
517
+ pm <- c(-1,1) # 'pm' = plus/minus
518
+ stopifnot(atan(Inf*pm) == pm*pi/2)
519
+ ## end of moved from is.finite.Rd
520
+
521
+
522
+ ## kronecker
523
+ ( M <- matrix(1:6, ncol=2) )
524
+ stopifnot(kronecker(4, M)==4 * M)
525
+ # Block diagonal matrix:
526
+ stopifnot(kronecker(diag(1, 3), M) == diag(1, 3) %x% M)
527
+ ## end of moved from kronecker.Rd
528
+
529
+
530
+ ## list
531
+ str(pl <- as.pairlist(ps.options()))
532
+
533
+ ## These are all TRUE:
534
+ stopifnot(is.list(pl) && is.pairlist(pl),
535
+ !is.null(list()),
536
+ is.null(pairlist()),
537
+ !is.list(NULL),
538
+ is.pairlist(pairlist()),
539
+ is.null(as.pairlist(list())),
540
+ is.null(as.pairlist(NULL))
541
+ )
542
+ ## end of moved from list.Rd
543
+
544
+
545
+ ## log
546
+ stopifnot(all.equal(log(1:10), log(1:10, exp(1))))
547
+ stopifnot(all.equal(log10(30), log(30, 10)))
548
+ stopifnot(all.equal(log2(2^pi), 2^log2(pi)))
549
+ stopifnot(Mod(pi - log(exp(pi*1i)) / 1i) < 10* Meps)
550
+ stopifnot(Mod(1+exp(pi*1i)) < 10* Meps)
551
+ ## end of moved from Log.Rd
552
+
553
+
554
+ ## logistic
555
+ eps <- 100 * Meps
556
+ x <- c(0:4, rlogis(100))
557
+ stopifnot(all.equal(plogis(x), 1 / (1 + exp(-x)), tol = eps))
558
+ stopifnot(all.equal(plogis(x, lower=FALSE), exp(-x)/ (1 + exp(-x)), tol = eps))
559
+ stopifnot(all.equal(plogis(x, lower=FALSE, log=TRUE), -log(1 + exp(x)),
560
+ tol = eps))
561
+ stopifnot(all.equal(dlogis(x), exp(x) * (1 + exp(x))^-2, tol = eps))
562
+ ## end of moved from Logistic.Rd
563
+
564
+
565
+ ## Lognormal
566
+ x <- rlnorm(1000) # not yet always :
567
+ stopifnot(abs(x - qlnorm(plnorm(x))) < 1e4 * Meps * x)
568
+ ## end of moved from Lognormal.Rd
569
+
570
+
571
+ ## lower.tri
572
+ ma <- matrix(1:20, 4, 5)
573
+ stopifnot(lower.tri(ma) == !upper.tri(ma, diag=TRUE))
574
+ ## end of moved from lower.tri.Rd
575
+
576
+
577
+ ## make.names
578
+ stopifnot(make.names(letters) == letters)
579
+ ## end of make.names
580
+
581
+
582
+ ## mean
583
+ x <- c(0:10, 50)
584
+ stopifnot(all.equal(mean(x, trim = 0.5), median(x)))
585
+ ## moved from mean.Rd
586
+
587
+
588
+ ## Multinom
589
+ N <- 20
590
+ pr <- c(1,3,6,10) # normalization not necessary for generation
591
+ set.seed(153)
592
+ rr <- rmultinom(5000, N, prob = pr)
593
+ stopifnot(colSums(rr) == N)
594
+ (m <- rowMeans(rr))
595
+ all.equal(m, N * pr/sum(pr)) # rel.error ~0.003
596
+ stopifnot(max(abs(m/(N*pr/sum(pr)) - 1)) < 0.01)
597
+
598
+ (Pr <- dmultinom(c(0,0,3), prob = c(1, 1, 14)))
599
+ stopifnot(all.equal(Pr, dbinom(3, 3, p = 14/16)))
600
+
601
+ X <- t(as.matrix(expand.grid(0:3, 0:3)))
602
+ X <- X[, colSums(X) <= 3]
603
+ X <- rbind(X, 3:3 - colSums(X))
604
+ for(p in list(c(1,2,5), 1:3, 3:1, 2:0, 0:2, c(1,2,1), c(0,0,1))) {
605
+ px <- apply(X, 2, function(x) dmultinom(x, prob = p))
606
+ stopifnot(all.equal(sum(px), 1))
607
+ }
608
+ ## end of moved from Multinom.Rd
609
+
610
+
611
+ ## Poisson
612
+ dpois(c(0, 1, 0.17, 0.77), 1)
613
+ ## end of moved from Poisson.Rd
614
+
615
+
616
+ ## qr
617
+ ## tests of complex case
618
+ set.seed(1)
619
+ A <- matrix(rnorm(25), 5, 5, dimnames=list(1:5, letters[1:5]))
620
+ qr.solve(A, 1:5)
621
+ A[] <- as.complex(A)
622
+ qr.coef(qr(A), 1:5)
623
+ qr.solve(A, 1:5)
624
+
625
+ ## check for rank-deficient cases
626
+ X <- cbind(1:3, 1:3, 1)
627
+ stopifnot(all.equal(qr.X(qr(X)), X))
628
+ ## end of moved from qr.Rd
629
+
630
+
631
+ ## qraux
632
+ p <- ncol(x <- LifeCycleSavings[,-1]) # not the `sr'
633
+ qrstr <- qr(x) # dim(x) == c(n,p)
634
+ Q <- qr.Q(qrstr) # dim(Q) == dim(x)
635
+ R <- qr.R(qrstr) # dim(R) == ncol(x)
636
+ X <- qr.X(qrstr) # X == x
637
+ stopifnot(all.equal(X, as.matrix(x)))
638
+
639
+ ## X == Q %*% R :
640
+ stopifnot((1 - X /( Q %*% R))< 100*Meps)
641
+
642
+ dim(Qc <- qr.Q(qrstr, complete=TRUE)) # Square: dim(Qc) == rep(nrow(x),2)
643
+ stopifnot((crossprod(Qc) - diag(nrow(x))) < 10*Meps)
644
+
645
+ QD <- qr.Q(qrstr, D=1:p) # QD == Q \%*\% diag(1:p)
646
+ stopifnot(QD - Q %*% diag(1:p) < 8* Meps)
647
+
648
+ dim(Rc <- qr.R(qrstr, complete=TRUE)) # == dim(x)
649
+ dim(Xc <- qr.X(qrstr, complete=TRUE)) # square: nrow(x) ^ 2
650
+ dimnames(X) <- NULL
651
+ stopifnot(all.equal(Xc[,1:p], X))
652
+ ## end of moved from qraux.Rd
653
+
654
+
655
+ ## quantile
656
+ x <- rnorm(1001)
657
+ n <- length(x) ## the following is exact, because 1/(1001-1) is exact:
658
+ stopifnot(sort(x) == quantile(x, probs = ((1:n)-1)/(n-1), names=FALSE))
659
+
660
+ n <- 777
661
+ ox <- sort(x <- round(rnorm(n),1))# round() produces ties
662
+ ox <- c(ox, ox[n]) #- such that ox[n+1] := ox[n]
663
+ p <- c(0,1,runif(100))
664
+ i <- floor(r <- 1 + (n-1)*p)
665
+ f <- r - i
666
+ stopifnot(abs(quantile(x,p) - ((1-f)*ox[i] + f*ox[i+1])) < 20*Meps)
667
+ ## end of moved from quantile.Rd
668
+
669
+
670
+ ## rep
671
+ stopifnot(identical(rep(letters, 0), character(0)),
672
+ identical(rep.int(1:2, 0), integer(0)))
673
+
674
+ stopifnot(sum(1:8) == length(rep(1:4, 1:8, each=2)))
675
+ ## end of moved from rep.Rd
676
+
677
+
678
+ ## Round
679
+ x1 <- seq(-2, 4, by = .5)
680
+ non.int <- ceiling(x1) != floor(x1)
681
+ stopifnot(
682
+ trunc(x1) == as.integer(x1),
683
+ non.int == (ceiling(x1) != trunc(x1) | trunc(x1) != floor(x1)),
684
+ (signif(x1, 1) != round(x1,1)) == (non.int & abs(x1) > 1)
685
+ )
686
+ ## end of moved from Round.Rd
687
+
688
+
689
+ ## seq
690
+ stopifnot(
691
+ 3 == seq(3,3, by=pi),
692
+ 3 == seq(3,3.1,by=pi),
693
+ seq(1,6,by=3) == c(1,4),
694
+ seq(10,4.05,by=-3) == c(10,7)
695
+ )
696
+ ## end of moved from seq.Rd
697
+
698
+
699
+ ## sort
700
+ x <- swiss$Education[1:25]
701
+ stopifnot(!is.unsorted(sort(x)),
702
+ !is.unsorted(LETTERS),
703
+ is.unsorted(c(NA,1:3,2), na.rm = TRUE))
704
+
705
+ for(n in 1:20) {
706
+ z <- rnorm(n)
707
+ for(x in list(z, round(z,1))) { ## 2nd one has ties
708
+ qxi <- sort(x, method = "quick", index.return = TRUE)
709
+ stopifnot(qxi$x == sort(x, method = "shell"),
710
+ any(duplicated(x)) || all(qxi$ix == order(x)),
711
+ x[qxi$ix] == qxi$x)
712
+ }
713
+ }
714
+ ## end of moved from sort.Rd
715
+
716
+
717
+ ## substr
718
+ ss <- substring("abcdef",1:6,1:6)
719
+ stopifnot(ss == strsplit ("abcdef",NULL)[[1]])
720
+ x <- c("asfef", "qwerty", "yuiop[", "b", "stuff.blah.yech")
721
+ stopifnot(substr(x, 2, 5) == substring(x, 2, 5))
722
+ ## end of moved from substr.Rd
723
+
724
+
725
+ ## svd
726
+ hilbert <- function(n) { i <- 1:n; 1 / outer(i - 1, i, "+") }
727
+ str(X <- hilbert(9)[,1:6])
728
+ str(s <- svd(X))
729
+ Eps <- 100 * Meps
730
+
731
+ D <- diag(s$d)
732
+ stopifnot(abs(X - s$u %*% D %*% t(s$v)) < Eps)# X = U D V'
733
+ stopifnot(abs(D - t(s$u) %*% X %*% s$v) < Eps)# D = U' X V
734
+
735
+ X <- cbind(1, 1:7)
736
+ str(s <- svd(X)); D <- diag(s$d)
737
+ stopifnot(abs(X - s$u %*% D %*% t(s$v)) < Eps)# X = U D V'
738
+ stopifnot(abs(D - t(s$u) %*% X %*% s$v) < Eps)# D = U' X V
739
+ ## end of moved from svd.Rd
740
+
741
+
742
+ ## Trig
743
+ ## many of these tested for machine accuracy, which seems a bit extreme
744
+ set.seed(123)
745
+ stopifnot(cos(0) == 1)
746
+ stopifnot(sin(3*pi/2) == cos(pi))
747
+ x <- rnorm(99)
748
+ stopifnot(all.equal( sin(-x), - sin(x)))
749
+ stopifnot(all.equal( cos(-x), cos(x)))
750
+ x <- abs(x); y <- abs(rnorm(x))
751
+ stopifnot(abs(atan2(y, x) - atan(y/x)) < 10 * Meps)
752
+ stopifnot(abs(atan2(y, x) - atan(y/x)) < 10 * Meps)
753
+
754
+ x <- 1:99/100
755
+ stopifnot(Mod(1 - (cos(x) + 1i*sin(x)) / exp(1i*x)) < 10 * Meps)
756
+ ## error is about 650* at x=0.01:
757
+ stopifnot(abs(1 - x / acos(cos(x))) < 1000 * Meps)
758
+ stopifnot(abs(1 - x / asin(sin(x))) <= 10 * Meps)
759
+ stopifnot(abs(1 - x / atan(tan(x))) <= 10 *Meps)
760
+ ## end of moved from Trig.Rd
761
+
762
+ ## Uniform
763
+ u <- runif(20)
764
+ stopifnot(punif(u) == u, dunif(u) == 1,
765
+ runif(100, 2,2) == 2)#-> TRUE [bug in R version <= 0.63.1]
766
+ ## end of moved from Uniform.Rd
767
+
768
+
769
+ ## unique
770
+ my.unique <- function(x) x[!duplicated(x)]
771
+ for(i in 1:4)
772
+ { x <- rpois(100, pi); stopifnot(unique(x) == my.unique(x)) }
773
+
774
+ unique(iris)
775
+ stopifnot(dim(unique(iris)) == c(149, 5))
776
+ ## end of moved from unique.Rd
777
+
778
+
779
+ ## which.min
780
+ stopifnot(length(which.min(numeric(0))) == 0)
781
+ stopifnot(length(which.max( c(NA,NA) )) == 0)
782
+ ## end of moved from which.min.Rd
783
+
784
+
785
+ ## Wilcoxon
786
+ x <- -1:(4*6 + 1)
787
+ fx <- dwilcox(x, 4, 6)
788
+ stopifnot(fx == dwilcox(x, 6, 4))
789
+ Fx <- pwilcox(x, 4, 6)
790
+ stopifnot(abs(Fx - cumsum(fx)) < 10 * Meps)
791
+ ## end of moved from Wilcoxon.Rd
792
+
793
+
794
+ ## All the following relations must hold :
795
+ stopifnot(
796
+ 1 + Meps != 1,
797
+ 1 + .5* Meps == 1,
798
+ log2(.Machine$double.xmax) == .Machine$double.max.exp,
799
+ log2(.Machine$double.xmin) == .Machine$double.min.exp
800
+ )
801
+ # This test failed on HP-UX since pow(2,1024) returns DBL_MAX and sets
802
+ # errno = ERANGE. Most other systems return Inf and set errno
803
+ stopifnot(is.infinite(.Machine$double.base ^ .Machine$double.max.exp))
804
+ ## end of moved from zMachine.Rd
805
+
806
+
807
+ ## PR 640 (diff.default computes an incorrect starting time)
808
+ ## By: Laimonis Kavalieris <lkavalieris@maths.otago.ac.nz>
809
+ y <- ts(rnorm(24), freq=12)
810
+ x <- ts(rnorm(24), freq=12)
811
+ arima0(y, xreg = x, seasonal = list(order=c(0,1,0)))
812
+ ## Comments:
813
+
814
+
815
+ ## PR 644 (crash using fisher.test on Windows)
816
+ ## By: Uwe Ligges <ligges@statistik.uni-dortmund.de>
817
+ x <- matrix(c(2, 2, 4, 8, 6, 0, 1, 1, 7, 8, 1, 3, 1, 3, 7, 4, 2, 2, 2,
818
+ 1, 1, 0, 0, 0, 0, 0, 1, 1, 2, 0, 1, 1, 0, 2, 1, 0, 0, 0),
819
+ nc = 2)
820
+ fisher.test(x)
821
+ ## Comments: (wasn't just on Windows)
822
+
823
+ ## PR 653 (extrapolation in spline)
824
+ ## By: Ian White <imsw@holyrood.ed.ac.uk>
825
+ x <- c(2,5,8,10)
826
+ y <- c(1.2266,-1.7606,-0.5051,1.0390)
827
+ fn <- splinefun(x, y, method="natural")
828
+ xx1 <- fn(0:12)
829
+ # should be the same if reflected
830
+ fn <- splinefun(rev(-x),rev(y),method="natural")
831
+ xx2 <- fn(0:-12)
832
+ stopifnot(all.equal(xx1, xx2))
833
+ # should be the same as interpSpline
834
+ library(splines)
835
+ xx3 <- predict(interpSpline(x, y), 0:12)
836
+ stopifnot(all.equal(xx1, xx3$y))
837
+ unloadNamespace("splines")
838
+ ## Comments: all three differed in 1.2.1.
839
+
840
+
841
+ ## PR 698 (print problem with data frames)
842
+ ## actually, a subsetting problem with data frames
843
+ fred <- data.frame(happy=c(TRUE, FALSE, TRUE), sad=7:9)
844
+ z <- try(tmp <- fred[c(FALSE, FALSE, TRUE, TRUE)])
845
+ stopifnot(class(z) == "try-error")
846
+ ## Comments: No error before 1.2.1
847
+
848
+
849
+ ## PR 753 (step can't find variables)
850
+ ##
851
+ x <- data.frame(a=rnorm(10), b=rnorm(10), c=rnorm(10))
852
+ x0.lm <- lm(a ~ 1, data=x)
853
+ step(x0.lm, ~ b + c)
854
+ ## Comments:
855
+
856
+
857
+ ## PR 796 (aic in binomial models is often wrong)
858
+ ##
859
+ a1 <- glm(cbind(ncases, ncontrols) ~ agegp + tobgp * alcgp,
860
+ data = esoph, family = binomial())$aic
861
+ a1
862
+ a2 <- glm(ncases/(ncases+ncontrols) ~ agegp + tobgp * alcgp,
863
+ data = esoph, family = binomial(), weights=ncases+ncontrols)$aic
864
+ a2
865
+ stopifnot(all.equal(a1, a2))
866
+ ## Comments:
867
+ # both should be 236.9645
868
+ # changed to use all.equal rather than == in 2.1.0 -pd
869
+
870
+ ## Follow up: example from Lindsey, purportedly of inaccuracy in aic
871
+ y <- matrix(c(2, 0, 7, 3, 0, 9), ncol=2)
872
+ x <- gl(3, 1)
873
+ a <- glm(y ~ x, family=binomial)$aic
874
+ stopifnot(is.finite(a))
875
+ ## Comments: gave NaN prior to 1.2.1
876
+
877
+
878
+ ## PR 802 (crash with scan(..., what=list(,,)))
879
+ ##
880
+ m <- matrix(1:9, 3,3)
881
+ write(m, "test.dat", 3)
882
+ try(scan("test.dat", what=list(,,,)))
883
+ unlink("test.dat")
884
+ ## Comments: segfaulted in 1.2.0
885
+
886
+
887
+ ## Jonathan Rougier, 2001-01-30 [bug in 1.2.1 and earlier]
888
+ tmp <- array(list(3), c(2, 3))
889
+ tmp[[2, 3]] <- "fred"
890
+ all.equal(t(tmp), aperm(tmp))
891
+
892
+
893
+ ## PR 860 (Context problem with ... and rbind) Prof Brian D Ripley, 2001-03-03,
894
+ f <- function(x, ...)
895
+ {
896
+ g <- function(x, ...) x
897
+ rbind(numeric(), g(x, ...))
898
+ }
899
+ f(1:3)
900
+ ## Error in 1.2.2
901
+ f <- function(x, ...) h(g(x, ...))
902
+ g <- function(x, ...) x
903
+ h <- function(...)substitute(list(...))
904
+ f(1)
905
+ ## Error in 1.2.2
906
+ substitute(list(...))
907
+ ## Error in 1.2.2
908
+
909
+
910
+ ## Martin Maechler, 2001-03-07 [1.2.2 and in parts earlier]
911
+ tf <- tempfile()
912
+ cat(1:3,"\n", file = tf)
913
+ for(line in list(4:6, "", 7:9)) cat(line,"\n", file = tf, append = TRUE)
914
+
915
+ count.fields(tf) # 3 3 3 : ok {blank line skipped}
916
+ z <- scan(tf, what=rep(list(""),3), nmax = 3)
917
+ stopifnot(sapply(z, length) == 3)
918
+ ## FALSE in 1.2.2
919
+ z <- as.data.frame(scan(tf, what=rep(list(""),3), n=9))
920
+ dim(z)
921
+ ## should be 3 3. Was 2 3 in 1.2.2.
922
+ read.table(tf)
923
+ ## gave error in 1.2.2
924
+ unlink(tf)
925
+
926
+
927
+ ## PR 870 (as.numeric and NAs) Harald Fekj�r, 2001-03-08,
928
+ is.na(as.numeric(" "))
929
+ is.na(as.integer(" "))
930
+ is.na(as.complex(" "))
931
+ ## all false in 1.2.2
932
+
933
+
934
+ ## PR 871 (deparsing of attribute names) Harald Fekj�r, 2001-03-08,
935
+ midl <- 4
936
+ attr(midl,"Object created") <- date()
937
+ deparse(midl)
938
+ dump("midl", "midl.R")
939
+ source("midl.R") ## syntax error in 1.2.2
940
+ unlink("midl.R")
941
+
942
+
943
+ ## PR 872 (surprising behavior of match.arg()) Woodrow Setzer, 2001-03-08,
944
+ fun1 <- function(x, A=c("power","constant")) {
945
+ arg <- match.arg(A)
946
+ formals()
947
+ }
948
+ topfun <- function(x, Fun=fun1) {
949
+ a1 <- fun1(x)
950
+ print(a1)
951
+ a2 <- Fun(x,A="power")
952
+ stopifnot(all.equal(a1, a2))
953
+ print(a2)
954
+ }
955
+ topfun(2, fun1)
956
+ ## a1 printed without defaults in 1.2.2
957
+
958
+
959
+ ## PR 873 (long formulas in terms()) Jerome Asselin, 2001-03-08,
960
+ form <- cbind(log(inflowd1),log(inflowd2),log(inflowd3),
961
+ log(inflowd4),log(inflowd5),log(inflowd6)) ~ precip*I(Tmax^2)
962
+ terms(form) # error in 1.2.2
963
+
964
+
965
+ ## PR 881 Incorrect values in non-central chisq values on Linux, 2001-03-21
966
+ x <- dchisq(c(7.1, 7.2, 7.3), df=2, ncp=20)
967
+ stopifnot(diff(x) > 0)
968
+ ## on 1.2.2 on RH6.2 i686 Linux x = 0.01140512 0.00804528 0.01210514
969
+
970
+
971
+ ## PR 882 eigen segfaults on 0-diml matrices, 2001-03-23
972
+ m <- matrix(1, 0, 0) # 1 to force numeric not logical
973
+ try(eigen(m))
974
+ ## segfaults on 1.2.2
975
+
976
+
977
+ ## PR 979 expand.model.frame() failed for models fitted with a subset
978
+ df <- data.frame(y = 1:10, z = 1:10, m = 1:10)
979
+ fit <- lm(y ~ 1, data = df, subset = m < 8)
980
+ mf <- expand.model.frame(fit, ~ z) # failed in 1.2.3
981
+ stopifnot(identical(names(mf), c("y", "z")), identical(mf$z, 1:7))
982
+
983
+
984
+ ## 1.3.0 had poor compression on gzfile() with lots of small pieces.
985
+ zz <- gzfile("t1.gz", "w")
986
+ write(1:1000, zz)
987
+ close(zz)
988
+ (sz <- file.info("t1.gz")$size)
989
+ unlink("t1.gz")
990
+ stopifnot(sz < 2000)
991
+
992
+
993
+ ## PR 1010: plot.mts (type="p") was broken in 1.3.0 and this call failed.
994
+ plot(ts(matrix(runif(10), ncol = 2)), type = "p")
995
+
996
+
997
+ ## in 1.3.0 readLines(ok=FALSE) failed.
998
+ cat(file="foo.txt", 1:10, sep="\n")
999
+ x <- try(readLines("foo.txt", 100, ok=FALSE))
1000
+ unlink("foo.txt")
1001
+ stopifnot(length(class(x)) == 1 && class(x) == "try-error")
1002
+
1003
+
1004
+ ## PR 1047 [<-data.frame failure, BDR 2001-08-10
1005
+ test <- df <- data.frame(x=1:10, y=11:20, row.names=letters[1:10])
1006
+ test[] <- lapply(df, factor)
1007
+ test
1008
+ ## error in 1.3.0 in test[]
1009
+
1010
+
1011
+ ## PR 1048 bug in dummy.coef.lm, Adrian Baddeley, 2001-08-10
1012
+ ## modified to give a sensible test
1013
+ old <- getOption("contrasts")
1014
+ options(contrasts=c("contr.helmert", "contr.poly"))
1015
+ DF <- data.frame(x=1:20,y=rnorm(20),z=factor(1:20 <= 10))
1016
+ dummy.coef(lm(y ~ z * I(x), data=DF))
1017
+ dummy.coef(lm(y ~ z * poly(x,1), data=DF))
1018
+ ## failed in 1.3.0. Second one warns: deficiency of the method.
1019
+ options(contrasts=old)
1020
+
1021
+
1022
+ ## PR 1050 error in ksmooth C code + patch, Hsiu-Khuern Tang, 2001-08-12
1023
+ x <- 1:4
1024
+ y <- 1:4
1025
+ z <- ksmooth(x, y, x.points=x)
1026
+ stopifnot(all.equal(z$y, y))
1027
+ ## did some smoothing prior to 1.3.1.
1028
+
1029
+
1030
+ ## The length of lines read by scan() was limited before 1.4.0
1031
+ xx <- paste(rep(0:9, 2000), collapse="")
1032
+ zz <- file("foo.txt", "w")
1033
+ writeLines(xx, zz)
1034
+ close(zz)
1035
+ xxx <- scan("foo.txt", "", sep="\n")
1036
+ stopifnot(identical(xx, xxx))
1037
+ unlink("foo.txt")
1038
+
1039
+
1040
+ ## as.character was truncating formulae: John Fox 2001-08-23
1041
+ mod <- this ~ is + a + very + long + formula + with + a + very + large + number + of + characters
1042
+ zz <- as.character(mod)
1043
+ zz
1044
+ nchar(zz)
1045
+ stopifnot(nchar(zz)[3] == 83)
1046
+ ## truncated in 1.3.0
1047
+
1048
+
1049
+ ## substr<-, Tom Vogels, 2001-09-07
1050
+ x <- "abcdef"
1051
+ substr(x, 2, 3) <- "wx"
1052
+ stopifnot(x == "awxdef")
1053
+
1054
+ x <- "abcdef"
1055
+ substr(x, 2, 3) <- "wxy"
1056
+ stopifnot(x == "awxdef")
1057
+
1058
+ x <- "abcdef"
1059
+ substr(x, 2, 3) <- "w"
1060
+ stopifnot(x == "awcdef")
1061
+ ## last was "aw" in 1.3.1
1062
+
1063
+
1064
+ ## reading bytes from a connection, Friedrich Leisch 2001-09-07
1065
+ cat("Hello World", file="world.txt")
1066
+ con <- file("world.txt", "r")
1067
+ zz <- readChar(con, 100)
1068
+ close(con)
1069
+ unlink("world.txt")
1070
+ stopifnot(zz == "Hello World")
1071
+ ## was "" in 1.3.1.
1072
+
1073
+
1074
+ ## prediction was failing for intercept-only model
1075
+ ## as model frame has no columns.
1076
+ d <- data.frame(x=runif(50), y=rnorm(50))
1077
+ d.lm <- lm(y ~ 1, data=d)
1078
+ predict(d.lm, data.frame(x=0.5))
1079
+ ## error in 1.3.1
1080
+
1081
+
1082
+ ## predict.arima0 needed a matrix newxreg: Roger Koenker, 2001-09-27
1083
+ u <- rnorm(120)
1084
+ s <- 1:120
1085
+ y <- 0.3*s + 5*filter(u, c(.95,-.1), "recursive", init=rnorm(2))
1086
+ fit0 <- arima0(y,order=c(2,0,0), xreg=s)
1087
+ fit1 <- arima0(y,order=c(2,1,0), xreg=s, include.mean=TRUE)
1088
+ fore0 <- predict(fit0 ,n.ahead=44, newxreg=121:164)
1089
+ fore1 <- predict(fit1, n.ahead=44, newxreg=121:164)
1090
+ par(mfrow=c(1,2))
1091
+ ts.plot(y,fore0$pred, fore0$pred+2*fore0$se, fore0$pred-2*fore0$se,
1092
+ gpars=list(lty=c(1,2,3,3)))
1093
+ abline(fit0$coef[3:4], lty=2)
1094
+ ts.plot(y, fore1$pred, fore1$pred+2*fore1$se, fore1$pred-2*fore1$se,
1095
+ gpars=list(lty=c(1,2,3,3)))
1096
+ abline(c(0, fit1$coef[3]), lty=2)
1097
+
1098
+
1099
+ ## merging when NA is a level
1100
+ a <- data.frame(x = 1:4)
1101
+ b <- data.frame(x = 1:3, y = factor(c("NA", "a", "b"), exclude=""))
1102
+ (m <- merge(a, b, all.x = TRUE))
1103
+ stopifnot(is.na(m[4, 2]))
1104
+ ## was level NA in 1.3.1
1105
+ stopifnot(!is.na(m[1, 2]))
1106
+
1107
+
1108
+ ## merging with POSIXct columns:
1109
+ x <- data.frame(a = as.POSIXct(Sys.time() + (1:3)*10000), b = LETTERS[1:3])
1110
+ y <- data.frame(b = LETTERS[3:4], c = 1:2)
1111
+ stopifnot(1 == nrow(merge(x, y)))
1112
+ stopifnot(4 == nrow(merge(x, y, all = TRUE)))
1113
+
1114
+
1115
+ ## PR 1149. promax was returning the wrong rotation matrix.
1116
+ ability.FA <- factanal(factors = 2, covmat = ability.cov, rotation = "none")
1117
+ pm <- promax(ability.FA$loadings)
1118
+ tmp1 <- as.vector(ability.FA$loadings %*% pm$rotmat)
1119
+ tmp2 <- as.vector(pm$loadings)
1120
+ stopifnot(all.equal(tmp1, tmp2))
1121
+
1122
+
1123
+ ## PR 1155. On some systems strptime was not setting the month or mday
1124
+ ## when yday was supplied.
1125
+ bv1 <- data.frame(day=c(346,346,347,347,347), time=c(2340,2350,0,10,20))
1126
+ attach(bv1)
1127
+ tmp <- strptime(paste(day, time %/% 100, time %% 100), "%j %H %M")
1128
+ detach()
1129
+ stopifnot(tmp$mon == 11)
1130
+ # day of month will be different in a leap year on systems that default
1131
+ # to the current year, so test differences:
1132
+ stopifnot(diff(tmp$mday) == c(0, 1, 0, 0))
1133
+ ## Comments: failed on glibc-based systems in 1.3.1, including Windows.
1134
+
1135
+
1136
+ ## PR 1004 (follow up). Exact Kolmogorov-Smirnov test gave incorrect
1137
+ ## results due to rounding errors (Charles Geyer, charlie@stat.umn.edu,
1138
+ ## 2001-10-25).
1139
+ ## Example 5.4 in Hollander and Wolfe (Nonparametric Statistical
1140
+ ## Methods, 2nd ed., Wiley, 1999, pp. 180-181).
1141
+ x <- c(-0.15, 8.6, 5, 3.71, 4.29, 7.74, 2.48, 3.25, -1.15, 8.38)
1142
+ y <- c(2.55, 12.07, 0.46, 0.35, 2.69, -0.94, 1.73, 0.73, -0.35, -0.37)
1143
+ stopifnot(round(ks.test(x, y)$p.value, 4) == 0.0524)
1144
+
1145
+
1146
+ ## PR 1150. Wilcoxon rank sum and signed rank tests did not return the
1147
+ ## Hodges-Lehmann estimators of the associated confidence interval
1148
+ ## (Charles Geyer, charlie@stat.umn.edu, 2001-10-25).
1149
+ ## One-sample test: Example 3.1 in Hollander & Wolfe (1973), 29f.
1150
+ x <- c(1.83, 0.50, 1.62, 2.48, 1.68, 1.88, 1.55, 3.06, 1.30)
1151
+ y <- c(0.878, 0.647, 0.598, 2.05, 1.06, 1.29, 1.06, 3.14, 1.29)
1152
+ we <- wilcox.test(y, x, paired = TRUE, conf.int = TRUE)
1153
+ ## NOTE order: y then x.
1154
+ ## Results from Hollander & Wolfe (1999), 2nd edition, page 40 and 53
1155
+ stopifnot(round(we$p.value,4) == 0.0391)
1156
+ stopifnot(round(we$conf.int,3) == c(-0.786, -0.010))
1157
+ stopifnot(round(we$estimate,3) == -0.46)
1158
+ ## Two-sample test: Example 4.1 in Hollander & Wolfe (1973), 69f.
1159
+ x <- c(0.80, 0.83, 1.89, 1.04, 1.45, 1.38, 1.91, 1.64, 0.73, 1.46)
1160
+ y <- c(1.15, 0.88, 0.90, 0.74, 1.21)
1161
+ we <- wilcox.test(y, x, conf.int = TRUE)
1162
+ ## NOTE order: y then x.
1163
+ ## Results from Hollander & Wolfe (1999), 2nd edition, page 111 and 126
1164
+ stopifnot(round(we$p.value,4) == 0.2544)
1165
+ stopifnot(round(we$conf.int,3) == c(-0.76, 0.15))
1166
+ stopifnot(round(we$estimate,3) == -0.305)
1167
+
1168
+
1169
+ ## range gave wrong length result for R < 1.4.0
1170
+ stopifnot(length(range(numeric(0))) == 2)
1171
+ ## Comments: was just NA
1172
+
1173
+
1174
+ ## mishandling of integer(0) in R < 1.4.0
1175
+ x1 <- integer(0) / (1:3)
1176
+ x2 <- integer(0) ^ (1:3)
1177
+ stopifnot(length(x1) == 0 & length(x2) == 0)
1178
+ ## Comments: were integer NAs in real answer in 1.3.1.
1179
+
1180
+
1181
+ ## PR#1138/9 rounding could give non-integer answer.
1182
+ x <- round(100000/3, -2) - 33300
1183
+ stopifnot(x == 0)
1184
+ ## failed in 1.3.x on Solaris and Windows but not Debian Linux.
1185
+
1186
+
1187
+ ## PR#1160 finding midpoints in image <janef@stat.berkeley.edu, 2001-11-06>
1188
+ x2 <- c(0, 0.002242152, 0.004484305, 0.006726457, 0.00896861,
1189
+ 0.01121076, 0.01345291, 0.01569507, 0.01793722, 0.02017937,
1190
+ 0.02242152, 0.02466368, 0.02690583, 0.02914798, 0.03139013,
1191
+ 0.03363229, 0.03587444, 0.03811659, 0.04035874, 0.04932735,
1192
+ 0.05156951, 0.05381166)
1193
+ z <- c(0, 0.067, NA, 0.167, 0.083, 0.05, 0.067, NA, 0, 0.1, 0, 0.05,
1194
+ 0.067, 0.067, 0.016, 0.117, 0.017, -0.017, 0.2, 0.35, 0.134, 0.15)
1195
+ image(x2, 1, as.matrix(z))
1196
+ ## Comments: failed under R 1.3.1.
1197
+
1198
+
1199
+ ##PR 1175 and 1123##
1200
+ set.seed(123)
1201
+ ## We can't seem to get Pearson residuals right ##
1202
+ x <- 1:4 # regressor variable
1203
+ y <- c(2,6,7,8) # response binomial counts
1204
+ n <- rep(10,4) # number of binomial trials
1205
+ ym <- cbind(y,n-y) # response variable as a matrix
1206
+ glm1 <- glm(ym~x,binomial) # fit a generalized linear model
1207
+ f <- fitted(glm1)
1208
+ rp1 <- (y-n*f)/sqrt(n*f*(1-f)) # direct calculation of pearson residuals
1209
+ rp2 <- residuals(glm1,type="pearson") # should be pearson residuals
1210
+ stopifnot(all.equal(rp1,rp2))
1211
+ # sign should be same as response residuals
1212
+ x <- 1:10
1213
+ y <- rgamma(10,2)/x
1214
+ glm2 <- glm(y~x,family=Gamma)
1215
+ stopifnot(all.equal(sign(resid(glm2,"response")),sign(resid(glm2,"pearson"))))
1216
+ # shouldn't depend on link for a saturated model
1217
+ x<-rep(0:1,10)
1218
+ y<-rep(c(0,1,1,0,1),4)
1219
+ glm3<-glm(y~x,family=binomial(),control=glm.control(eps=1e-8))
1220
+ glm4<-glm(y~x,family=binomial("log"),control=glm.control(eps=1e-8))
1221
+ stopifnot(all.equal(resid(glm3,"pearson"),resid(glm4,"pearson")))
1222
+
1223
+
1224
+ ## Torsten Hothorn, 2001-12-04
1225
+ stopifnot(pt(-Inf, 3, ncp=0) == 0, pt(Inf, 3, ncp=0) == 1)
1226
+ ## Comments: were 0.5 in 1.3.1
1227
+
1228
+
1229
+ ## Paul Gilbert, 2001-12-07
1230
+ cancor(matrix(rnorm(100),100,1), matrix(rnorm(300),100,3))
1231
+ ## Comments: failed in R-devel.
1232
+
1233
+
1234
+ ## PR#1201: incorrect values in qbeta
1235
+ x <- seq(0, 0.8, len=1000)
1236
+ xx <- pbeta(qbeta(x, 0.143891, 0.05), 0.143891, 0.05)
1237
+ stopifnot(max(abs(x - xx)) < 1e-6)
1238
+ ## Comments: Get a range of zeroes in 1.3.1
1239
+
1240
+
1241
+ ## PR#1216: binomial null model
1242
+ y <- rbinom(20, 1, 0.5)
1243
+ glm(y ~ 0, family = binomial)
1244
+ ## Comments: 1.3.1 gave Error in any(n > 1) : Object "n" not found
1245
+
1246
+
1247
+ ## Integer overflow in type.convert
1248
+ res <- type.convert("12345689", as.is=FALSE)
1249
+ stopifnot(typeof(res) == "integer")
1250
+ res <- type.convert("12345689012", as.is=FALSE)
1251
+ stopifnot(typeof(res) == "double")
1252
+ ## Comments: was integer in 1.4.0
1253
+
1254
+
1255
+ ## La.eigen() segfault
1256
+ #e1 <- La.eigen(m <- matrix(1:9,3))
1257
+ #stopifnot(e1$values == La.eigen(m, only.values = TRUE)$values)
1258
+ ## 2.0.0: La.eigen is defunct
1259
+
1260
+
1261
+ ## Patrick Connelly 2001-01-22, prediction with offsets failed
1262
+ ## a simpler example
1263
+ counts <- c(18, 17, 15, 20, 10, 20, 25, 13, 12)
1264
+ outcome <- gl(3, 1, 9)
1265
+ treatment <- gl(3, 3)
1266
+ DF <- data.frame(counts = c(18, 17, 15, 20, 10, 20, 25, 13, 12),
1267
+ outcome = gl(3, 1, 9), treatment = gl(3, 3),
1268
+ exposure = c(1.17, 1.78, 1.00, 2.36, 2.58, 0.80, 2.51,
1269
+ 1.16, 1.77))
1270
+ fit <- glm(counts ~ outcome + treatment + offset(log(exposure)),
1271
+ family = poisson, data = DF)
1272
+ p1 <- predict(fit)
1273
+ p2 <- predict(fit, se = TRUE) ## failed < 1.4.1
1274
+ p3 <- predict(fit, newdata = DF)
1275
+ p4 <- predict(fit, newdata = DF, se = TRUE)
1276
+ stopifnot(all.equal(p1, p2$fit), all.equal(p1, p3), all.equal(p2, p4))
1277
+ fit <- glm(counts ~ outcome + treatment, offset = log(exposure),
1278
+ family = poisson, data = DF)
1279
+ p1 <- predict(fit)
1280
+ p2 <- predict(fit, se = TRUE) ## failed < 1.4.1
1281
+ p3 <- predict(fit, newdata = DF)
1282
+ p4 <- predict(fit, newdata = DF, se = TRUE)
1283
+ stopifnot(all.equal(p1, p2$fit), all.equal(p1, p3), all.equal(p2, p4))
1284
+
1285
+
1286
+ ## PR#1267 hashing NaN
1287
+ load(file.path(Sys.getenv("SRCDIR"), "nanbug.rda"))
1288
+ bb <- b; bb[5] <- NaN
1289
+ identical(b, bb) # TRUE
1290
+ unique(c(NaN, bb)) #[1] NaN 0 1 2 3 NA
1291
+ stopifnot(identical(unique(c(NaN, b)), unique(c(NaN, bb))))
1292
+ ## 1.4.0 gives [1] NaN 0 1 2 NaN 3 NA on most platforms
1293
+
1294
+
1295
+ ## reported by PD 2002-01-24
1296
+ Y <- matrix(rnorm(20), , 2)
1297
+ fit <- manova(Y ~ 1)
1298
+ fit # failed
1299
+ print(fit, intercept = TRUE)
1300
+ summary(fit) # failed
1301
+ summary(fit, intercept = TRUE)
1302
+
1303
+
1304
+ ## Several qr.*() functions lose (dim)names.
1305
+ ## reported by MM 2002-01-26
1306
+
1307
+ ## the following should work both in R and S+ :
1308
+ q4 <- qr(X4 <- cbind(a = 1:9, b = c(1:6,3:1), c = 2:10, d = rep(1,9)))
1309
+ ##q2 <- qr(X4[,1:2])
1310
+ y04 <- y4 <- cbind(A=1:9,B=2:10,C=3:11,D=4:12)
1311
+ dimnames(y4)[[1]] <- paste("c",1:9,sep=".")
1312
+ y1 <- y4[,2]
1313
+ y40 <- y4 ; dimnames(y40) <- list(dimnames(y4)[[1]], NULL)
1314
+
1315
+ c1 <- qr.coef( q4, y4) # row- AND col-names
1316
+ c2 <- qr.coef( q4, y04)# ditto
1317
+ c3 <- qr.coef( q4, y40)# row--names
1318
+ dn3 <- dimnames(c3)
1319
+ stopifnot(identical(dimnames(c1), dimnames(c2)),
1320
+ identical(dimnames(c1), list(letters[1:4], LETTERS[1:4])),
1321
+ identical(dn3[[1]], letters[1:4]), length(dn3[[2]]) == 0,
1322
+ identical(names(qr.coef(q4,y1)), letters[1:4]),
1323
+ identical(dimnames(qr.R(q4))[[2]], letters[1:4]),
1324
+
1325
+ identical(dimnames(qr.qty(q4,y4)), dimnames(y4)),
1326
+ identical(dimnames(qr.qty(q4,y40)), dimnames(y40)),
1327
+ identical(dimnames(qr.qy (q4,y04)), dimnames(y04)),
1328
+
1329
+ all.equal(y1, qr.fitted(q4, y1 ), tol = 1e-12),
1330
+ all.equal(y4, qr.fitted(q4, y4 ), tol = 1e-12),
1331
+ all.equal(y40, qr.fitted(q4, y40), tol = 1e-12),
1332
+ all.equal(y04, qr.fitted(q4, y04), tol = 1e-12),
1333
+
1334
+ all.equal(X4, qr.X(q4), tol = 1e-12)
1335
+ )
1336
+
1337
+
1338
+ ## PR 1297 read.fwf() was interpreting `#' in 1.4.0/1
1339
+ cat(file="test.fwf", "123ABC123", "123#3 123", "123XYZ123", sep="\n")
1340
+ (res <- read.fwf("test.fwf", widths=c(3,3,3), comment.char=""))
1341
+ unlink("test.fwf")
1342
+ stopifnot(res[2, 2] == "#3 ")
1343
+
1344
+
1345
+ ## abs was failing to dispatch as part of the Math group generic
1346
+ tmp <- data.frame(x = -5:5)
1347
+ abs(tmp)
1348
+ ## failed in 1.4.1.
1349
+
1350
+
1351
+ ## PR 1363 La.svd was not working for integer args
1352
+ m <- matrix(1:4, 2)
1353
+ (s1 <- svd(m))
1354
+ (s2 <- La.svd(m))
1355
+ stopifnot(all.equal(s1$d, s2$d), all.equal(s1$u, s2$u),
1356
+ all.equal(s1$v, t(s2$vt)))
1357
+ (e1 <- eigen(m))
1358
+ # (e2 <- La.eigen(m)) # 2.0.0: La.eigen is defunct
1359
+ stopifnot(all.equal(e1$d, e1$d))
1360
+
1361
+
1362
+ ## order/sort.list on NA_STRING
1363
+ x <- c("A", NA, "Z")
1364
+ stopifnot(identical(sort(x, na.last = TRUE), x[sort.list(x, na.last = TRUE)]))
1365
+ stopifnot(identical(sort(x, na.last = FALSE), x[sort.list(x, na.last = FALSE)]))
1366
+ ## 1.4.1 sorted NA correctly with sort but not sort.list.
1367
+
1368
+
1369
+ ## Don MacQueen 2002-03-26
1370
+ stopifnot(length(seq(1024902010, 1024902025, by=1)) == 16)
1371
+ t0 <- ISOdatetime(2002,6,24,0,0,10)
1372
+ x <- seq.POSIXt(from=t0,to=t0+15,by='1 sec')
1373
+ stopifnot(length(x) == 16)
1374
+
1375
+
1376
+ ## whilst reading the code BDR 2002-03-31
1377
+ z <- try(max(complex(0)))
1378
+ stopifnot(inherits(z, "try-error"))
1379
+ z <- try(min(complex(0)))
1380
+ stopifnot(inherits(z, "try-error"))
1381
+ ## 1.4.1 gave +-Inf + random imaginary part
1382
+
1383
+
1384
+ ## PR#1283 min/max(NULL) or (integer(0))
1385
+ z <- min(NULL)
1386
+ stopifnot(!is.na(z), mode(z) == "numeric", z == Inf)
1387
+ z <- min(integer(0))
1388
+ stopifnot(!is.na(z), mode(z) == "numeric", z == Inf)
1389
+ z <- max(NULL)
1390
+ stopifnot(!is.na(z), mode(z) == "numeric", z == -Inf)
1391
+ z <- max(integer(0))
1392
+ stopifnot(!is.na(z), mode(z) == "numeric", z == -Inf)
1393
+
1394
+
1395
+ ## more reading the code BDR 2002-03-31
1396
+ stopifnot(identical(range(), range(numeric(0))))
1397
+ ## in 1.4.1 range() was c(1,1)
1398
+ stopifnot(is.null(c()))
1399
+ ## in 1.4.1 this was structure(TRUE, names="recursive")
1400
+
1401
+ ## range(numeric(0)) was not as documented
1402
+ x <- numeric(0)
1403
+ (rx <- range(x))
1404
+ stopifnot(identical(rx, c(min(x), max(x))))
1405
+ ## 1.4.1 had c(NA, NA)
1406
+
1407
+
1408
+ ## PR 1431 persp() crashes with numeric values for [x,y,z]lab
1409
+ persp(1:2, 1:2, matrix(1:4, 2), xlab=1)
1410
+ ## segfaulted in 1.4.1
1411
+
1412
+
1413
+ ## PR#1244 bug in det using method="qr"
1414
+ ## method argument is no longer used in det
1415
+ #m2 <- structure(c(9822616000, 3841723000, 79790.09, 3841723000, 1502536000,
1416
+ # 31251.82, 79790.09, 31251.82, 64156419.36), dim = c(3, 3))
1417
+ #(d1 <- det(m2, method="eigenvalues"))
1418
+ #(d2 <- det(m2, method="qr"))
1419
+ #stopifnot(d2 == 0) ## 1.4.1 gave 9.331893e+19
1420
+ #(d3 <- det(m2, method="qr", tol = 1e-10))
1421
+ #stopifnot(all.equal(d1, d3, tol=1e-3))
1422
+
1423
+
1424
+ ## PR#1422 glm start/offset bugs
1425
+ res <- try(data(ships, package = MASS))
1426
+ if(!inherits(res, "try-error")) {
1427
+ ships.glm <- glm(incidents ~ type + year + period + offset(log(service)),
1428
+ family = poisson, data = ships, subset = (service != 0))
1429
+ update(ships.glm, start = coef(ships.glm))
1430
+ }
1431
+ ## failed in 1.4.1.
1432
+
1433
+
1434
+ ## PR#1439 file.info()$isdir was only partially logical
1435
+ (info <- file.info("."))
1436
+ info$isdir
1437
+ stopifnot(info$isdir == TRUE)
1438
+ ## 1.4.1 had a TRUE value that was not internally integer 1.
1439
+
1440
+ ## PR#1473 predict.*bSpline() bugs extrapolating for deriv >= 1
1441
+ library(splines)
1442
+ x <- c(1:3,5:6)
1443
+ y <- c(3:1,5:6)
1444
+ (isP <- interpSpline(x,y))# poly-spline representation
1445
+ (isB <- interpSpline(x,y, bSpl = TRUE))# B-spline repr.
1446
+ xo <- c(0, x, 10)# x + outside points
1447
+ op <- options(digits = 4)
1448
+ for(der in 0:3) # deriv=3 fails!
1449
+ print(formatC(try(predict(isP, xo, deriv = der)$y), wid=7,format="f"),
1450
+ quote = FALSE)
1451
+ ## and for B-spline (instead of polynomial):
1452
+ for(der in 0:3) # deriv=3 failed
1453
+ print(formatC(try(predict(isB, xo, deriv = der)$y), wid=7,format="f"),
1454
+ quote = FALSE)
1455
+ options(op)
1456
+ unloadNamespace("splines")
1457
+
1458
+
1459
+ ## PR 902 segfaults when warning string is too long, Ben Bolker 2001-04-09
1460
+ provoke.bug <- function(n=9000) {
1461
+ warnmsg <- paste(LETTERS[sample(1:26,n,replace=TRUE)],collapse="")
1462
+ warning(warnmsg)
1463
+ }
1464
+ provoke.bug()
1465
+ ## segfaulted in 1.2.2, will also on machines without vsnprintf (none now)
1466
+
1467
+
1468
+ ## PR#1510 merge with multiple match rows and different names.
1469
+ df1 <- data.frame(z = 1:10, m = letters[1:10], w = rnorm(10))
1470
+ df2 <- data.frame(x = 1:10, y = rnorm(10), n = letters[1:10])
1471
+ merge(df2, df1, by.x = c("x", "n"), by.y = c("z", "m"))
1472
+ ## failed in 1.5.0
1473
+
1474
+
1475
+ ## PR 1524 Problems with paste/unlist
1476
+ l <- names(unlist(list(aa = list(bb = 1))))
1477
+ l
1478
+ # this is exactly "aa.bb"
1479
+ stopifnot(identical(l, "aa.bb"))
1480
+ l2 <- paste(l, "this should be added")
1481
+ stopifnot(identical(l2, "aa.bb this should be added"))
1482
+ ## 1.5.0 gave l2 printing as l.
1483
+
1484
+
1485
+ ## PR 1530 drop inconsistency for data frames
1486
+ DF <- data.frame(x = 1:3, y = c("A","D","E"), z = c(6,9,10))
1487
+ a1 <- DF[1,1:3]
1488
+ xx <- DF[1,]
1489
+ a2 <- xx[, 1:3]
1490
+ a3 <- DF[1,1:3, drop = TRUE]
1491
+ a4 <- xx[, 1:3, drop = TRUE]
1492
+ stopifnot(identical(a1, a2), identical(a3, a4))
1493
+ ## <= 1.5.0 had a2 == a3.
1494
+
1495
+
1496
+ ## PR 1536 rbind.data.frame converts logical to factor
1497
+ df <- data.frame(a = 1:10)
1498
+ df$b <- df$a < 5
1499
+ ddf <- rbind(df, df)
1500
+ stopifnot(!is.factor(ddf$b))
1501
+ ## 1.5.0 had b as a factor.
1502
+
1503
+
1504
+ ## PR 1548 : prettyNum inserted leading commas
1505
+ stopifnot(prettyNum(123456, big.mark=",") == "123,456")
1506
+
1507
+
1508
+ ## PR 1552: cut.dendrogram
1509
+ hc <- hclust(dist(USArrests), "ave")
1510
+ cc <- cut(as.dendrogram(hc), h = 20)## error in 1.5.0
1511
+
1512
+ ## predict.smooth.spline(*, deriv > 0) :
1513
+ x <- (1:200)/32
1514
+ ss <- smooth.spline(x, 10*sin(x))
1515
+ stopifnot(length(x) == length(predict(ss,deriv=1)$x))# not yet in 1.5.0
1516
+
1517
+ ## pweibull(large, log=T):
1518
+ stopifnot(pweibull(seq(1,50,len=1001), 2,3, log = TRUE) < 0)
1519
+
1520
+ ## part of PR 1662: fisher.test with total one
1521
+ fisher.test(cbind(0, c(0,0,0,1)))
1522
+ ## crashed in R <= 1.5.0
1523
+
1524
+ stopifnot(Mod(vector("complex", 7)) == 0) # contained garbage in 1.5.0
1525
+
1526
+ ## hist.POSIXt with numeric `breaks'
1527
+ hist(.leap.seconds, breaks = 5)
1528
+ ## error in 1.5.1
1529
+
1530
+
1531
+ ##Jonathan Rougier 2002-06-18
1532
+ x <- matrix(runif(30), 10, 3)
1533
+ poly(x, degree=2)
1534
+ ## failed in 1.5.1
1535
+
1536
+
1537
+ ## PR#1694 cut with infinite values -> NA (Markus J�ntti)
1538
+ cut.off <- c(-Inf, 0, Inf)
1539
+ x <- c(-Inf, -10, 0, 10, Inf)
1540
+ (res <- cut(x, cut.off, include.lowest=TRUE))
1541
+ stopifnot(!is.na(res))
1542
+ (res <- cut(x, cut.off, include.lowest=TRUE, right=FALSE))
1543
+ stopifnot(!is.na(res))
1544
+ ## outer values were NA in 1.5.1
1545
+
1546
+
1547
+ ## ls.str() for function environments:
1548
+ Fn <- ecdf(rnorm(50))
1549
+ ls.str(envir = environment(Fn))
1550
+ ## failed in 1.5.1
1551
+
1552
+
1553
+ ## PR 1767 all.equal.character for non-matching NAs
1554
+ all.equal(c("A", "B"), c("A", NA))
1555
+ ## failed in 1.5.1
1556
+
1557
+
1558
+ ## failed since at least version 0.90:
1559
+ stopifnot(is.character(a12 <- all.equal(1,1:2)),
1560
+ length(a12) == 1,# was 2 till 1.6.2
1561
+ a12 == "Numeric: lengths (1, 2) differ")
1562
+ ## a12 was *list* of length 3
1563
+
1564
+
1565
+ ## related to PR 1577/1608, conversions to character
1566
+ DF <- data.frame(b = LETTERS[1:3])
1567
+ sapply(DF, class)
1568
+ DF[[1]] <- LETTERS[1:3]
1569
+ stopifnot(is.character(DF$b)) ## was factor < 1.6.0
1570
+ DF <- data.frame(b = LETTERS[1:3])
1571
+ DF$b <- LETTERS[1:3]
1572
+ stopifnot(is.character(DF$b)) ## always was character.
1573
+
1574
+ x <- data.frame(var = LETTERS[1:3]); x$var <- as.character(x$var)
1575
+ x[[1]][2] <- "3"
1576
+ x
1577
+ stopifnot(is.character(x$var))
1578
+ is.na(x[[1]]) <- 2
1579
+ stopifnot(is.character(x$var))
1580
+
1581
+ x <- data.frame(var = I(LETTERS[1:3]))
1582
+ x[[1]][2] <- "3"
1583
+ x
1584
+ stopifnot(is.character(x$var))
1585
+ is.na(x[[1]]) <- 2
1586
+ stopifnot(is.character(x$var))
1587
+
1588
+ x <- data.frame(var = factor(LETTERS[1:3]))
1589
+ x[[1]][2] <- "3"
1590
+ x
1591
+ stopifnot(is.factor(x$var))
1592
+ is.na(x[[1]]) <- 2
1593
+ stopifnot(is.factor(x$var))
1594
+
1595
+ x <- data.frame(a = 1:4)
1596
+ y <- data.frame(b = LETTERS[1:3])
1597
+ y$b <- as.character(y$b)
1598
+ z <- merge(x, y, by = 0, all.x = TRUE)
1599
+ sapply(z, data.class)
1600
+ stopifnot(is.character(z$b))
1601
+ ## end of `related to PR 1577/1608'
1602
+
1603
+
1604
+ ## logicals became factors < 1.6.0
1605
+ stopifnot(sapply(as.data.frame(matrix((1:12)%% 4 == 1, 3,4)),
1606
+ is.logical))
1607
+
1608
+
1609
+ ## recycling of factors in data.frame (wish from PR#1713)
1610
+ data.frame(x=c("A","B"), y="C") # failed to recycle in 1.5.1
1611
+ X <- data.frame(x=c("A","B"), y=I("C")) # also failed
1612
+ XX <- data.frame(x=c("A","B"), y=I(rep("C", 2))) # fine
1613
+ stopifnot(identical(X, XX))
1614
+ ## Last is false in some S variants.
1615
+
1616
+
1617
+ ## test of rank-deficient prediction, as various claims this did not work
1618
+ ## on R-help in June 2002
1619
+ x1 <- rnorm(100)
1620
+ x3 <- rnorm(100)
1621
+ y <- rnorm(100)
1622
+ train <- data.frame(y=y, x1=x1, x2=x1, x3=x3)
1623
+ fit <- lm(y ~ ., train)
1624
+ stopifnot(all.equal(predict(fit), predict(fit, train)))
1625
+ ## warning added for 1.6.0
1626
+
1627
+
1628
+ ## terms(y ~ .) on data frames with duplicate names
1629
+ DF <- data.frame(y = rnorm(10), x1 = rnorm(10), x2 = rnorm(10), x3 = rnorm(10))
1630
+ names(DF)[3] <- "x1"
1631
+ fit <- try(lm(y ~ ., DF))
1632
+ stopifnot(class(fit) == "try-error")
1633
+ ## had formula y ~ x1 + x1 + x3 in 1.5.1.
1634
+
1635
+
1636
+ ## PR#1759 as.character.octmode() (Henrik Bengtsson)
1637
+ x <- 0; class(x) <- "octmode"
1638
+ stopifnot(as.character(x) == "0")
1639
+ ## gave "" in 1.5.1
1640
+
1641
+
1642
+ ## PR#1843 unsplit() with f a list
1643
+ g <- factor(round(10 * runif(1000)))
1644
+ x <- rnorm(1000) + sqrt(as.numeric(g))
1645
+ xg <- split(x, list(g1=g,g2=g))
1646
+ res <- unsplit(xg, list(g1=g, g2=g))
1647
+ stopifnot(x == res) # can't have rounding error here
1648
+ ## gave incorrect result with warning in 1.5.1.
1649
+
1650
+
1651
+ ## matching NAs on Solaris (MM 2002-08-02)
1652
+ # x <- as.double(NA)
1653
+ # identical(x + 0, x)
1654
+ # stopifnot(match(x + 0, x, 0) == 1)
1655
+ ## match failed on Solaris with some compiler settings
1656
+ ## NA+0 is not guaranteed to be NA: could be NaN
1657
+
1658
+
1659
+ ## identical on specials (BDR 2002-08-02)
1660
+ stopifnot(identical(as.double(NA), NaN) == FALSE)
1661
+ ## was identical on 1.5.1
1662
+
1663
+
1664
+ ## safe prediction (PR#1840)
1665
+ cars.1 <- lm(dist ~ poly(speed, degree = 1), data = cars)
1666
+ cars1 <- lm(dist ~ speed, data = cars)
1667
+ DF <- data.frame(speed=4)
1668
+ stopifnot(all.equal(predict(cars.1, DF), predict(cars1, DF)))
1669
+ ## error in 1.5.1
1670
+
1671
+
1672
+ ## Ops.data.frame (PR#1889)
1673
+ d <- data.frame(1:10)
1674
+ d > list(5)
1675
+ ## failed in 1.5.1
1676
+
1677
+
1678
+ ## order(na.last = NA) (PR#1913 / 1906 / 1981)
1679
+ x <- 1
1680
+ order(x, na.last=NA)
1681
+ order(x, x, x, na.last=NA)
1682
+ ## failed in 1.5.1, since sapply simplified to a scalar.
1683
+ stopifnot(3:1 == order(c(1,2,3,NA), na.last=NA, decreasing=TRUE))
1684
+ ## ignored `decreasing' in 1.5.1
1685
+ order(c(NA, NA), na.last = NA)
1686
+ ## error in 1.5.1, now integer(0)
1687
+
1688
+ ## as.list() coerced logical to integer (PR#1926)
1689
+ x <- c(TRUE,FALSE,NA)
1690
+ stopifnot(identical(x, unlist(as.list(x))))
1691
+ ## the 2nd was (1,0,NA) before 1.6
1692
+
1693
+
1694
+ ## test of long Error expression in aov(): PR#1315 and later,
1695
+ ## and also a cross-check of deparse(, cutoff = 500)
1696
+ AA <- structure(list(Y2 = c(10, 9, 0, 0, 5, 6, 0, 0, 8, 9, 0, 0, 4,
1697
+ 4, 0, 0, 12, 11, 2, 0, 6, 7, 0, 0), P2 = factor(c(1L, 1L,
1698
+ 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L,
1699
+ 3L, 3L, 3L, 3L, 3L, 3L), labels = c("1", "2", "3")),
1700
+ AAAAAAAA = factor(c(1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L,
1701
+ 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L
1702
+ ), labels = c("E1", "E2")), B2 = factor(c(1L,
1703
+ 1L, 2L, 2L, 1L, 1L, 2L, 2L, 1L, 1L, 2L, 2L, 1L, 1L, 2L, 2L,
1704
+ 1L, 1L, 2L, 2L, 1L, 1L, 2L, 2L), labels = c("Red", "Unred"
1705
+ )), C2 = factor(c(1L, 2L, 1L, 2L, 1L,
1706
+ 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L,
1707
+ 1L, 2L, 1L, 2L), labels = c("Agent", "Patient"))),
1708
+ names = c("Y2", "P2", "AAAAAAAA", "B2", "C2"),
1709
+ class = "data.frame", row.names = 1:24)
1710
+ AK2anova.out <-
1711
+ aov(Y2 ~ AAAAAAAA * B2 * C2 +
1712
+ Error(P2 + P2:AAAAAAAA + P2:B2 + P2:C2 + P2:AAAAAAAA:B2 +
1713
+ P2:AAAAAAAA:C2 + P2:B2:C2 + P2:AAAAAAAA:B2:C2),
1714
+ data=AA)
1715
+ ## failed in 1.5.1
1716
+
1717
+ ## as.character was silently truncating expressions to 60 chars
1718
+ q2 <- expression(c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19))
1719
+ (q3 <- as.character(q2))
1720
+ stopifnot(nchar(q3) == 68)
1721
+ ## was 61 in 1.5.1
1722
+
1723
+
1724
+ ## Ops wasn't using NextMethod correctly
1725
+
1726
+ ## Ops.ordered:
1727
+ or <- ordered(c("a","b","c"))
1728
+ stopifnot( (or == "a") == c(TRUE,FALSE,FALSE))
1729
+ stopifnot(or == or)
1730
+ stopifnot(or != "d")
1731
+ ## last was NA NA NA in 1.5.1
1732
+
1733
+
1734
+ Ops.foo <- function(e1, e2) {
1735
+ NextMethod()
1736
+ }
1737
+ Ops.baz <- function(e1, e2) {
1738
+ NextMethod()
1739
+ }
1740
+ a <- b <- 1
1741
+ class(a) <- c("foo","bar","baz")
1742
+ class(b) <- c("foo","baz")
1743
+ stopifnot(a == 1,
1744
+ b == a)
1745
+ ##(already worked in 1.5.1)
1746
+
1747
+
1748
+ ## t() wrongly kept "ts" class and "tsp"
1749
+ t(ts(c(a=1, d=2)))
1750
+ ## gave error while printing in 1.5.1
1751
+ at <- attributes(t(ts(cbind(1, 1:20))))
1752
+ stopifnot(length(at) == 2,
1753
+ at$dim == c(2, 20),
1754
+ at$dimnames[[1]] == paste("Series", 1:2))
1755
+ ## failed in 1.5.1
1756
+
1757
+
1758
+ ## Nextmethod from anonymous function (PR#1211)
1759
+ try( get("print.ts")(1) )# -> Error
1760
+ ## seg.faulted till 1.5.1
1761
+
1762
+
1763
+ ## cbind/rbind should work with NULL only args
1764
+ stopifnot(is.null(cbind(NULL)), is.null(cbind(NULL,NULL)),
1765
+ is.null(rbind(NULL)), is.null(rbind(NULL,NULL)))
1766
+ ## gave error from 0.63 till 1.5.1
1767
+
1768
+
1769
+ ## seq.POSIXt() had rounding problem:
1770
+ stopifnot(4 == length(seq(from=ISOdate(2000,1,1), to=ISOdate(2000,1,4),
1771
+ length.out=4)))
1772
+ ## length was 5 till 1.6.0
1773
+
1774
+
1775
+ ## loess has a limit of 4 predictors (John Deke on R-help, 2002-09-16)
1776
+ data1 <- array(runif(500*5),c(500,5))
1777
+ colnames(data1) <- c("x1","x2","x3","x4","x5")
1778
+ y <- 3+2*data1[,"x1"]+15*data1[,"x2"]+13*data1[,"x3"]-8*data1[,"x4"]+14*data1[,"x5"]+rnorm(500)
1779
+ data2 <- as.data.frame(cbind(y,data1))
1780
+ result4 <- loess(y~x1+x2+x3+x4,data2)
1781
+ try(result5 <- loess(y~x1+x2+x3+x4+x5,data2))
1782
+ ## segfaulted in 1.5.1
1783
+
1784
+
1785
+ ## format.AsIs was not handling matrices
1786
+ jk <- data.frame(x1=2, x2=I(matrix(0,1,2)))
1787
+ jk
1788
+ ## printing failed in 1.5.1
1789
+
1790
+
1791
+ ## eigenvectors got irrelevant names (PR#2116)
1792
+ set.seed(1)
1793
+ A <- matrix(rnorm(20), 5, 4); A <- A[,c(1:4,1)] # rank 4!
1794
+ dimnames(A) <- list(LETTERS[1:5], letters[1:5])
1795
+ (ev <- eigen(A)$vectors)
1796
+ stopifnot(is.null(dimnames(ev)))
1797
+ ## had colnames in 1.6.0
1798
+
1799
+
1800
+ ## pretty was not pretty {because seq() isn't} (PR#1032 and D.Brahm)
1801
+ stopifnot(pretty(c(-.1, 1))[2] == 0, ## [2] was -2.775558e-17
1802
+ pretty(c(-.4,.8))[3] == 0, ## [3] was 5.551115e-17
1803
+ pretty(100+ c(0, pi*1e-10))[4] > 100,# < not too much rounding!
1804
+ pretty(c(2.8,3))[1] == 2.8)
1805
+ ## last differed by 4.44e-16 in R 1.1.1
1806
+
1807
+
1808
+ ## add1 was giving misleading message when scope was nonsensical.
1809
+ counts <- c(18,17,15,20,10,20,25,13,12)
1810
+ fit <- glm(counts ~ 1, family=poisson)
1811
+ res <- try(add1(fit, ~ .))
1812
+ ## error in 1.6.0 was
1813
+ ## `Error in if (ncol(add) > 1) { : missing value where logical needed'
1814
+ stopifnot(length(grep("missing value", res)) == 0)
1815
+
1816
+
1817
+ ## stripchart with NAs (PR#2018)
1818
+ Sepal <- iris$Sepal.Length
1819
+ Sepal[27] <- NA
1820
+ stripchart(Sepal ~ iris$Species, method="stack")
1821
+ ## failed in 1.6.1
1822
+
1823
+
1824
+ ## losing is.object bit internally (PR#2315)
1825
+ stopifnot(is.ts(log(as.ts(1:10))))
1826
+ ## failed for integer original as here in 1.6.1.
1827
+
1828
+
1829
+ ## formatC ignored rounding up (PR#2299)
1830
+ stopifnot(formatC(99.9, 1, format="fg") == "100")
1831
+ stopifnot(formatC(99.9, 2, format="fg") == "100")
1832
+ stopifnot(formatC(99.9, 3, format="fg") == "99.9")
1833
+ ## gave exponential format on 1.6.1
1834
+
1835
+
1836
+ ## full/partial matching in attr.
1837
+ tmp <- list(id=1)
1838
+ attr(tmp,"n.ch") <- 2
1839
+ attr(tmp,"n") <- 1
1840
+ attributes(tmp)
1841
+ (res <- attr(tmp, "n"))
1842
+ stopifnot(length(res) == 1 && res == 1)
1843
+ ## gave NULL in 1.6.1
1844
+
1845
+
1846
+ if (have_cat) {
1847
+ ## Formerly undocumented line limit in system(intern=TRUE)
1848
+ ## Naoki Takebayashi <ntakebay@bio.indiana.edu> 2002-12-07
1849
+ tmp <- tempfile()
1850
+ long <- paste(rep("0123456789", 20L), collapse="")
1851
+ cat(long, "\n", sep="", file=tmp)
1852
+ junk <- system(paste("cat", shQuote(tmp)), intern = TRUE)
1853
+ stopifnot(length(junk) == 1L, nchar(junk[1]) == 200L)
1854
+ ## and split truncated on 1.6.1
1855
+ }
1856
+
1857
+
1858
+ ## missing group generics for `difftime' (related to PR#2345)
1859
+ x <- as.difftime(c("0:3:20", "11:23:15"))
1860
+ y <- ISOdate(2001, 4, 26) - ISOdate(2001, 2, 26)
1861
+ x + x
1862
+ 2*x
1863
+ x < y
1864
+ x < 100
1865
+ ## all but last failed in R < 1.7.0
1866
+
1867
+
1868
+ ## PR 2358 (part)
1869
+ mm <- 1:2
1870
+ names(mm)[2] <- 'y'
1871
+ (mm <- c(mm, 3))
1872
+ stopifnot(is.na(names(mm)[1]))
1873
+ ## 1.6.1 had "NA"
1874
+
1875
+
1876
+ ## PR 2357
1877
+ a <- matrix(c(1,2,3,-1,-2,3),2,3,dimnames=list(c("A","B"),NULL))
1878
+ (z <- pmax(a, 0))
1879
+ stopifnot(identical(dimnames(z), dimnames(a)))
1880
+ # further checks
1881
+ a <- matrix(c(1,2,3,-1,-2,3),2,3,dimnames=list(c("A","B"),1:3))
1882
+ (z <- pmax(a, 0))
1883
+ stopifnot(identical(dimnames(z), dimnames(a)))
1884
+ a <- matrix(c(1,2,3,-1,-2,3),2,3,dimnames=list(NULL, letters[1:3]))
1885
+ (z <- pmax(a, 0))
1886
+ stopifnot(identical(dimnames(z), dimnames(a)))
1887
+ ## 1.6.1 only transferred dimnames if both components were non-null
1888
+
1889
+
1890
+ ## internal conversion to factor in type.convert was not right
1891
+ ## if a character string NA was involved.
1892
+ x <- c(NA, "NA", "foo")
1893
+ (z <- type.convert(x, as.is=FALSE))
1894
+ stopifnot(identical(levels(z), "foo"))
1895
+ (z <- type.convert(x, na.strings=character(0), as.is=FALSE))
1896
+ stopifnot(identical(levels(z), sort(c("foo", "NA"))))
1897
+ (z <- type.convert(x, na.strings="foo", as.is=FALSE))
1898
+ stopifnot(identical(levels(z), "NA"))
1899
+ ## extra level in 1.6.1
1900
+
1901
+
1902
+ ## related example
1903
+ tmp <- tempfile()
1904
+ cat(c("1", "foo", "\n", "2", "NA", "\n"), file = tmp)
1905
+ (z <- read.table(tmp, na.strings="foo", stringsAsFactors=TRUE))
1906
+ unlink(tmp)
1907
+ stopifnot(identical(levels(z$V2), "NA"),
1908
+ identical(is.na(z$V2), c(TRUE, FALSE)))
1909
+ ## 1.6.1 had V2 as NA NA.
1910
+
1911
+
1912
+ ## PR#2396, parsing and pushbacks.
1913
+ tmp <- tempfile()
1914
+ cat( c( "1", "a+b", "2"), file=tmp, sep="\n")
1915
+ open(tcon <- file(tmp))
1916
+ readLines(tcon, n=1)
1917
+ pushBack("a1+b1", tcon)
1918
+ parse(file=tcon, n=1)
1919
+ close(tcon)
1920
+ unlink(tmp)
1921
+ ## failed with syntax error in 1.6.1
1922
+
1923
+
1924
+ ## NAs in max.col
1925
+ a <- matrix(1, 3, 3)
1926
+ a[1,2] <- NA
1927
+ (z <- max.col(a))
1928
+ stopifnot(is.na(z[1]))
1929
+ ## gave (randomly) 1 or 3 in 1.6.1
1930
+
1931
+
1932
+ ## PR#2469: read.table on Mac OS CR-terminated files.
1933
+ tmp <- tempfile()
1934
+ x <- c("aaa", "bbb", "ccc")
1935
+ cat(x, sep="\r", file=tmp)
1936
+ con <- file(tmp)
1937
+ open(con)
1938
+ line <- readLines(con, 1)
1939
+ pushBack(line, con)
1940
+ (y <- readLines(con))
1941
+ close(con)
1942
+ unlink(tmp)
1943
+ stopifnot(identical(x, y))
1944
+ ## pushback problems in 1.6.2 only
1945
+
1946
+
1947
+ ## dimnames in solve(): not a bug just an improvement in 1.7.0
1948
+ A <- diag(3)
1949
+ dimnames(A) <- list(LETTERS[1:3], letters[1:3])
1950
+ (B <- solve(A))
1951
+ stopifnot(identical(colnames(B), rownames(A)))
1952
+ ## R < 1.7.0 had no colnames for B, and S has the colnames of A.
1953
+ stopifnot(all.equal(t(B), solve(t(A))))
1954
+ ## test here is of dimnames
1955
+
1956
+
1957
+ ## PR#2507: extracting 0-length dimensions for arrays
1958
+ dn <- list(LETTERS[1:2], letters[1:3], paste("t",1:4,sep=""))
1959
+ A. <- array(1:24, dim = 2:4, dimnames = dn)
1960
+ str(A.[1, 0, 2 ])
1961
+ str(A.[1, 0, 2, drop = FALSE])
1962
+ ## both gave errors in 1.6.2
1963
+
1964
+ plot(sf <- stepfun(2, 3:4))
1965
+ ## failed in 1.6.2
1966
+
1967
+
1968
+ ## PR#2541, cbind (and rbind) with zero-length components
1969
+ y <- matrix(0,1,0)
1970
+ cbind(y, integer(0))
1971
+ y <- matrix(0,0,1)
1972
+ rbind(y, integer(0))
1973
+ ## gave fatal error in 1.6.2, since miscalculated no of rows/cols.
1974
+
1975
+
1976
+ ## PR#2518 multiple objects in AIC.default.
1977
+ lm1 <- lm(y ~ x, list(x=1:10, y=jitter(1:10)))
1978
+ lm2 <- lm(y ~ x, list(x=1:10, y=jitter(1:10)))
1979
+ AIC(lm1, lm2)
1980
+ AIC(lm1, lm2, k=2)
1981
+ ## second failed in 1.6.2
1982
+
1983
+
1984
+ ## PR#2591 unique on ordered factor
1985
+ f <- ordered(month.name, levels=month.name)
1986
+ (uf <- unique(f))
1987
+ stopifnot(is.ordered(uf))
1988
+ ## gave factor in 1.6.2
1989
+
1990
+
1991
+ ## PR#2587 coercion of length-0 vectors
1992
+ x <- numeric(0)
1993
+ x[1] <- NA
1994
+ stopifnot(identical(mode(x), "numeric"))
1995
+ ##
1996
+
1997
+
1998
+ ## coercion lost the object bit in [<-
1999
+ x <- I(TRUE)
2000
+ is.object(x)
2001
+ x[2] <- "N"
2002
+ stopifnot(is.object(x))
2003
+ ## failed in 1.6.2
2004
+
2005
+
2006
+ ## check inherits now works for basic classes:
2007
+ x <- 1:3
2008
+ is.object(x) # FALSE
2009
+ stopifnot(inherits(x, "integer"))
2010
+ ## 2003-Mar-12 it did not
2011
+
2012
+
2013
+ ## rank() is numeric also for NA char vectors
2014
+ stopifnot(is.numeric(rk <- rank(c("ch","c", NA))),
2015
+ all(rk == c(2,1,3)))
2016
+ ## did not from R 1.2 -- 1.6
2017
+
2018
+
2019
+ ## table() should by default keep NA levels of factors
2020
+ i <- c(1:2,NA); fi <- factor(i, exclude = NULL)
2021
+ stopifnot(identical(as.character(i), dimnames(table(fi))[[1]]))
2022
+ ## not in 2003-Mar-10 unstable
2023
+
2024
+
2025
+ ## [lm.]influence() for multivariate lm :
2026
+ n <- 32
2027
+ Y0 <- matrix(rnorm(3 * n), n, 3) # and a version with named Y's
2028
+ Yn <- Y0; colnames(Yn) <- paste0("Y",1:3)
2029
+ X <- matrix(rnorm(5 * n), n, 5)
2030
+ for(Y in list(Y0, Yn)) {
2031
+ fmL <- lapply(1:3, function(j) lm(Y[,j] ~ X))
2032
+ infL <- lapply(fmL, lm.influence)
2033
+ infm <- lm.influence(mod <- lm(Y ~ X))
2034
+ if(interactive()) str(infL, give.attr=FALSE) # should match the 'infm' parts
2035
+ ## 1. "hat" are all the 3 the same
2036
+ hatL <- sapply(infL, `[[`, "hat")
2037
+ stopifnot(all.equal(hatL[,1], hatL[,2]), all.equal(hatL[,2], hatL[,3]))
2038
+ ## 2. the other 3 components should be "concatenated" to give same as mlm :
2039
+ for(nm in c("coefficients", "sigma", "wt.res")) {
2040
+ stopifnot(all.equal(unname(infm[[nm]]),
2041
+ unname(sapply(infL, `[[`, nm, simplify="array",
2042
+ USE.NAMES=FALSE))))
2043
+ }
2044
+ ## failed up to 2003-03-29 (pre 1.7.0)
2045
+ im1 <- influence.measures(mod)
2046
+ dfbs <- dfbetas(mod)
2047
+ dimnames(dfbs)[[3]] <- dimnames(im1$infmat)[[3]][1:6]
2048
+ stopifnot(all.equal(im1$infmat[,,1:6], dfbs))
2049
+ }# for both Y's
2050
+ ## lm.influence() did not work correctly for "mlm"s in R <= 3.5.1
2051
+
2052
+
2053
+ ## rbind.data.frame with character and ordered columns
2054
+ A <- data.frame(a=1)
2055
+ A$b <- "A"
2056
+ B <- data.frame(a=2)
2057
+ B$b <- "B"
2058
+ AB <- rbind(A,B)
2059
+ (cl <- sapply(AB, class))
2060
+ stopifnot(cl[2] == "character") # was factor in 1.6.2
2061
+
2062
+ A <- data.frame(a=1:3, b=ordered(letters[1:3]))
2063
+ B <- data.frame(a=7:9, b=ordered(letters[7:9]))
2064
+ AB <- rbind(A,B)
2065
+ (cl <- sapply(AB, class))
2066
+ stopifnot(cl$b[1] == "ordered") # was factor in 1.6.2
2067
+ C <- data.frame(a=4:6, b=factor(letters[4:6]))
2068
+ ABC <- rbind(AB, C)
2069
+ (cl <- sapply(ABC, class))
2070
+ stopifnot(cl[2] == "factor")
2071
+
2072
+ A <- data.frame(a=1)
2073
+ A$b <- "A"
2074
+ B <- data.frame(a=2, b=factor("B"))
2075
+ (AB <- rbind(A,B))
2076
+ (cl <- sapply(AB, class))
2077
+ stopifnot(cl[2] == "character")
2078
+
2079
+ A <- data.frame(a=1, b=factor("A"))
2080
+ B <- data.frame(a=2)
2081
+ B$b <- "B"
2082
+ (AB <- rbind(A,B))
2083
+ (cl <- sapply(AB, class))
2084
+ stopifnot(cl[2] == "factor")
2085
+ A <- data.frame(a=factor(c("A", NA, "C")))
2086
+ B <- data.frame(a=factor(c("B", NA, "C")))
2087
+ (AB <- rbind(A,B))
2088
+ stopifnot(levels(AB$a) == c("A", "C", "B"))
2089
+ A <- data.frame(a=I(c("A", NA, "C")))
2090
+ B <- data.frame(a=I(c("B", NA, "C")))
2091
+ (AB <- rbind(A,B))
2092
+ (cl <- sapply(AB, class))
2093
+ stopifnot(cl[1] == "AsIs")
2094
+
2095
+ A <- data.frame(a=1)
2096
+ A$b <- "A"
2097
+ B <- data.frame(a=2, b=I("B"))
2098
+ (AB <- rbind(A,B))
2099
+ (cl <- sapply(AB, class))
2100
+ stopifnot(cl[2] == "character")
2101
+
2102
+ A <- data.frame(a=1, b=factor("A"))
2103
+ B <- data.frame(a=2, b=I("B"))
2104
+ (AB <- rbind(A,B))
2105
+ (cl <- sapply(AB, class))
2106
+ stopifnot(cl[2] == "factor")
2107
+ ##
2108
+
2109
+
2110
+ ## hclust(), as.hclust.twins(), agnes() consistency
2111
+ x <- matrix(rnorm(30), ncol=3) # no observation names
2112
+ xn <- x; rownames(xn) <- letters[10:1]# has obs. names
2113
+ hc <- hclust(dist(x), method="complete")
2114
+ hcn <- hclust(dist(xn), method="complete")
2115
+ iC1 <- !names(hc) %in% c("labels", "call")
2116
+ stopifnot(identical(hc, hhc <- as.hclust(hc)),
2117
+ identical(hhc, as.hclust(hhc)),
2118
+ identical(hc[iC1], hcn[iC1]),
2119
+ identical(hcn$labels, rownames(xn))
2120
+ )
2121
+
2122
+ if(require(cluster, quietly = TRUE)) { # required package
2123
+ ag <- agnes(x, method="complete")
2124
+ hcag <- as.hclust(ag)
2125
+ agn <- agnes(xn, method="complete")
2126
+ hcagn <- as.hclust(agn)
2127
+ iC2 <- !names(hcag) %in% c("labels", "call")
2128
+ stopifnot(identical(hcagn[iC2], hcag[iC2]),
2129
+ identical(hcagn$labels, hcn$labels),
2130
+ all.equal(hc$height, hcag$height, tol = 1e-12),
2131
+ all(hc$merge == hcag$merge | hc$merge == hcag$merge[ ,2:1])
2132
+ )
2133
+ detach("package:cluster")
2134
+ }
2135
+ ## as.hclust.twins() lost labels and more till (incl) 1.6.2
2136
+
2137
+
2138
+ ## PR#2867 qr(LAPACK=TRUE) didn't always pivot in 1.7.0
2139
+ set.seed(1)
2140
+ X <- matrix(rnorm(40),10,4)
2141
+ X[,1] <- X[,2]
2142
+ (qrx <- qr(X, LAPACK=TRUE))
2143
+ stopifnot(any(qrx$pivot != 1:4)) # check for pivoting
2144
+ ##
2145
+
2146
+
2147
+ ## rownames<- did not work on an array with > 2 dims in 1.7.0
2148
+ A <- array(1:12, dim=c(2, 3, 2))
2149
+ rownames(A) <- letters[1:2]
2150
+ A <- array(1:12, dim=c(2, 3, 2))
2151
+ colnames(A) <- 1:3
2152
+ ## failed in 1.7.0
2153
+
2154
+
2155
+ ## predict on constant model, PR#2958
2156
+ res <- model.frame(~1, data.frame(x = 1:5))
2157
+ stopifnot(nrow(res) == 5)
2158
+ res <- predict(lm(y ~ 1, data = data.frame(y = rep(0:3, c(5,9,7,1)))),
2159
+ newdata = data.frame(x = 1:5))
2160
+ stopifnot(length(res) == 5)
2161
+ res <- predict(glm(y ~ 1, family = poisson,
2162
+ data = data.frame(y = rep(0:3, c(5,9,7,1)))),
2163
+ newdata = data.frame(x = 1:5), type = "r")
2164
+ stopifnot(length(res) == 5)
2165
+ ## all length one in 1.7.0
2166
+
2167
+
2168
+ ## PR#2993 need to consider delta=NULL in power.t.test{ctest}
2169
+ power.t.test(n=10, delta=NULL, power=.9, alternative="two.sided")
2170
+ ## failed in 1.7.0
2171
+
2172
+
2173
+ ## PR#3221 eigenvectors should be a matrix even in the 1x1 case
2174
+ A <- matrix(1)
2175
+ stopifnot(is.matrix(eigen(A)$vectors))
2176
+ ## gave vector in 1.7.0
2177
+
2178
+
2179
+ ## [[<-.data.frame
2180
+ testdata <- data.frame(a=1:2, b = c(TRUE, NA))
2181
+ td <- strptime(c("31121991", "31121992"), "%d%m%Y")
2182
+ testdata[["a"]] <- td
2183
+ if(FALSE)
2184
+ stopifnot(inherits(.Last.value, "try-error"))
2185
+ ## succeeded in 1.7.0 and again in 2.11.x {should it not?}
2186
+
2187
+
2188
+ ## pacf on n x 1 matrix: Paul Gilbert, R-devel, 2003-06-18
2189
+ z <- as.ts(matrix(rnorm(100), , 1))
2190
+ class(z) # not "mts"
2191
+ is.matrix(z) # TRUE in 1.7.1
2192
+ pacf(z)
2193
+ pacf(matrix(rnorm(100), , 1))
2194
+ ## both failed in 1.7.1.
2195
+
2196
+
2197
+ ## lsfit was not setting residuals in the rank=0 case
2198
+ fit <- lsfit(matrix(0, 10, 1), 1:10, intercept=FALSE)
2199
+ stopifnot(fit$residuals == 1:10)
2200
+ ## zero residuals in 1.7.1.
2201
+
2202
+
2203
+ ## interval calculations on predict.lm
2204
+ x <- 1:10
2205
+ y <- rnorm(10)
2206
+ predict(lm(y ~ x), type="terms", interval="confidence")
2207
+ ##
2208
+
2209
+
2210
+ ## 0-level factors
2211
+ f <- factor(numeric(0))
2212
+ sort(f)
2213
+ unique(f)
2214
+ ## both failed in 1.7.1
2215
+
2216
+
2217
+ ## data failed with some multiple inputs
2218
+ data(cars, women)
2219
+ ## failed in 1.7.1
2220
+
2221
+
2222
+ ## body() and formals() looked in different places
2223
+ bar <- function(x=NULL)
2224
+ {
2225
+ foo <- function(y=3) testit()
2226
+ print(formals("foo"))
2227
+ print(body("foo"))
2228
+ }
2229
+ bar()
2230
+ ## the call to body() failed in 1.7.0
2231
+
2232
+
2233
+ ## string NAs shouldn't have any internal structure.(PR#3078)
2234
+ a <- c("NA", NA, "BANANA")
2235
+ na <- NA_character_
2236
+ a1 <- substr(a,1,1)
2237
+ stopifnot(is.na(a1)==is.na(a))
2238
+ a2 <- substring(a,1,1)
2239
+ stopifnot(is.na(a2)==is.na(a))
2240
+ a3 <- sub("NA","na",a)
2241
+ stopifnot(is.na(a3)==is.na(a))
2242
+ a3 <- gsub("NA","na",a)
2243
+ stopifnot(is.na(a3)==is.na(a))
2244
+ substr(a3, 1, 2) <- "na"
2245
+ stopifnot(is.na(a3)==is.na(a))
2246
+ substr(a3, 1, 2) <- na
2247
+ stopifnot(all(is.na(a3)))
2248
+ stopifnot(agrep("NA", a) == c(1, 3))
2249
+ stopifnot(grep("NA", a) == c(1, 3))
2250
+ stopifnot(grep("NA", a, perl=TRUE) == c(1, 3))
2251
+ stopifnot(all(is.na(agrep(na, a))))
2252
+ stopifnot(all(is.na(grep(na, a))))
2253
+ stopifnot(all(is.na(grep(na, a, perl=TRUE))))
2254
+ a4 <- abbreviate(a)
2255
+ stopifnot(is.na(a4) == is.na(a))
2256
+ a5 <- chartr("NA", "na", a)
2257
+ stopifnot(is.na(a5) == is.na(a))
2258
+ a6 <- gsub(na, "na", a)
2259
+ stopifnot(all(is.na(a6)))
2260
+ a6a <- gsub("NANA", na, a)
2261
+ stopifnot(is.na(a6a)==c(FALSE, TRUE, TRUE))
2262
+ a7 <- a; substr(a7, 1, 2) <- "na"
2263
+ stopifnot(is.na(a7) == is.na(a))
2264
+ a8 <- a; substr(a8, 1, 2) <- na
2265
+ stopifnot(all(is.na(a8)))
2266
+ stopifnot(identical(a, toupper(tolower(a))))
2267
+ a9 <- strsplit(a, "NA")
2268
+ stopifnot(identical(a9, list("", na ,c("BA",""))))
2269
+ a9 <- strsplit(a, "NA", fixed = TRUE)
2270
+ stopifnot(identical(a9, list("", na ,c("BA",""))))
2271
+ a9 <- strsplit(a, "NA", perl = TRUE)
2272
+ stopifnot(identical(a9, list("", na ,c("BA",""))))
2273
+ a10 <- strsplit(a, na)
2274
+ stopifnot(identical(a10, as.list(a)))
2275
+ ## nchar() differs a bit
2276
+ stopifnot(identical(is.na(a), is.na(nchar(a))),
2277
+ all(!is.na(nchar(a, type = "width"))))
2278
+ ## NA and "NA" were not distinguished in 1.7.x
2279
+
2280
+
2281
+ ## coercing 0-length generic vectors
2282
+ as.double(list())
2283
+ as.integer(list())
2284
+ as.logical(list())
2285
+ as.complex(list())
2286
+ as.character(list())
2287
+ ## all but the last failed in 1.7.x
2288
+
2289
+
2290
+ ## help on reserved words
2291
+ ## if else repeat while function for in next break will fail
2292
+ if(.Platform$OS.type == "windows") options(pager="console")
2293
+ for(topic in c("TRUE", "FALSE", "NULL", "NA", "Inf", "NaN",
2294
+ "NA_integer_", "NA_real_", "NA_complex_", "NA_character_")) {
2295
+ eval(parse(text=paste("?", topic, sep="")))
2296
+ eval(parse(text=paste("help(", topic, ")", sep="")))
2297
+ }
2298
+ ## ?NULL and all the help calls fail in 1.7.x
2299
+
2300
+
2301
+ ## row names in data frames
2302
+ xx <- structure(1:3, names=letters[1:3])
2303
+ data.frame(xx)
2304
+ data.frame(xx, yy=1:6) # failed with misleading message in 1.7.x
2305
+ data.frame(xx, yy=1:6, row.names=NULL) # no warning
2306
+ ##
2307
+
2308
+
2309
+ ## empty paste
2310
+ stopifnot(length(paste(character(0), character(0))) == 0) # was ""
2311
+ stopifnot(identical(paste(character(0), character(0), collapse="+"), ""))
2312
+ ##
2313
+
2314
+
2315
+ ## concatenation of make.names (Tom Minka, R-help, 2003-06-17)
2316
+ a1 <- make.names(c("a", "a", "a"), unique=TRUE)
2317
+ a2 <- make.names(c(make.names(c("a", "a"), unique=TRUE), "a"), unique=TRUE)
2318
+ stopifnot(identical(a1, a2))
2319
+
2320
+ df1 <- rbind(data.frame(x=1), data.frame(x=2), data.frame(x=3))
2321
+ df2 <- rbind(rbind(data.frame(x=1), data.frame(x=2)), data.frame(x=3))
2322
+ stopifnot(identical(df1, df2))
2323
+ ##
2324
+
2325
+
2326
+ ## PR#3280 data.frame(check.name=FALSE) was not always respected
2327
+ DF <- data.frame(list("a*" = 3), check.names = FALSE)
2328
+ stopifnot(identical(names(DF), "a*"))
2329
+ ## gave "a." in 1.7.1
2330
+
2331
+
2332
+ ## functions using get() were not always looking for functions or in the
2333
+ ## right place
2334
+ x <- factor(1:3)
2335
+ contrasts(x) <- "ctr"
2336
+ test <- function(x)
2337
+ {
2338
+ ctr <- contr.treatment
2339
+ contrasts(x) # failed in 1.7.1
2340
+ }
2341
+ test(x)
2342
+ ##
2343
+
2344
+ ## get/exists were ignoring mode in base
2345
+ stopifnot(exists(".Device"))
2346
+ stopifnot(!exists(".Device", mode="function")) # was true in 1.7.1
2347
+ ##
2348
+
2349
+
2350
+ ## inadvertent recursive indexing bug (PR#3324)
2351
+ x <- list(a=1:3, b=2:4)
2352
+ try(x[[c("c", "d")]])
2353
+ try(x[[c("c", "d")]] <- NA)
2354
+ ## both segfaulted in 1.7.1
2355
+
2356
+
2357
+ ## empty indexing of data frames (PR#3532)
2358
+ x <- data.frame(x = "1.5")
2359
+ num <- numeric(0)
2360
+ x[num] <- list()
2361
+ x[, num] <- list()
2362
+ ## x[[num]] is rightly an error
2363
+ ## x[num] etc failed in 1.7.x.
2364
+
2365
+
2366
+ ## .Random.seed was searched for with inherits=TRUE
2367
+ rm(.Random.seed)
2368
+ attach(list(.Random.seed=c(0:4)))
2369
+ x <- runif(1)
2370
+ detach(2)
2371
+ (new <- RNGkind())
2372
+ stopifnot(identical(new, c("Mersenne-Twister", "Inversion", "Rejection")))
2373
+ stopifnot(identical(find(".Random.seed"), ".GlobalEnv"))
2374
+ ## took from and assigned to list in 1.7.x.
2375
+
2376
+
2377
+ ## PR#3750
2378
+ y <- c(1, NA, NA, 7)
2379
+ identical(y, qqnorm(y, plot.it=FALSE)$y)
2380
+ ## qqnorm() used to drop NA's in its result till 1.7.x
2381
+
2382
+
2383
+ ## PR#3763
2384
+ d0 <- ISOdate(2001,1,1)[0] # length 0 POSIX
2385
+ (rd0 <- round(d0, "day"))
2386
+ stopifnot(identical(rd0, as.POSIXlt(d0)))
2387
+ ## 2nd line gave floating point exception (in format(*)!)
2388
+
2389
+
2390
+ ## New det() function
2391
+ m <- cbind(1, c(1, 1))
2392
+ stopifnot(det(m) == 0, determinant(m)$mod == -Inf,
2393
+ determinant(m, log=FALSE)$mod == 0)
2394
+ ## gave error for singular matrices in earlier Aug.2003
2395
+
2396
+
2397
+ ## tests of model fitting in the presence of non-syntactic names
2398
+ names(swiss)[6] <- "Infant Mortality"
2399
+ (lm1 <- lm(Fertility ~ ., data = swiss))
2400
+ formula(lm1) # is expanded out
2401
+ slm1 <- step(lm1)
2402
+ add1(lm1, ~ I(Education^2) + .^2)
2403
+ step(lm1, scope=~ I(Education^2) + .^2)
2404
+
2405
+ Quine <-
2406
+ structure(list(Eth = factor(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
2407
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2408
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2409
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2410
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L,
2411
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2412
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2413
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2414
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2415
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), levels = 1:2,
2416
+ labels = c("A", "N")),
2417
+ Sex = factor(c(2L, 2L, 2L, 2L, 2L,
2418
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2419
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L,
2420
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2421
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2422
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2423
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2424
+ 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2425
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2426
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), levels = 1:2,
2427
+ labels = c("F", "M")),
2428
+ Age = factor(c(1L, 1L, 1L, 1L, 1L,
2429
+ 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
2430
+ 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 2L,
2431
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L,
2432
+ 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L,
2433
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2434
+ 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L,
2435
+ 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2436
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
2437
+ 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L), levels = 1:4,
2438
+ labels = c("F0", "F1", "F2", "F3")),
2439
+ `Slow or fast` = factor(c(2L,
2440
+ 2L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 2L, 2L, 2L, 2L,
2441
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L,
2442
+ 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L,
2443
+ 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L,
2444
+ 1L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L,
2445
+ 2L, 2L, 2L, 2L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2446
+ 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
2447
+ 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L,
2448
+ 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2449
+ 1L), levels = 1:2, labels = c("AL", "SL")),
2450
+ Days = c(2, 11,
2451
+ 14, 5, 5, 13, 20, 22, 6, 6, 15, 7, 14, 6, 32, 53, 57, 14, 16,
2452
+ 16, 17, 40, 43, 46, 8, 23, 23, 28, 34, 36, 38, 3, 5, 11, 24,
2453
+ 45, 5, 6, 6, 9, 13, 23, 25, 32, 53, 54, 5, 5, 11, 17, 19, 8,
2454
+ 13, 14, 20, 47, 48, 60, 81, 2, 0, 2, 3, 5, 10, 14, 21, 36, 40,
2455
+ 6, 17, 67, 0, 0, 2, 7, 11, 12, 0, 0, 5, 5, 5, 11, 17, 3, 4, 22,
2456
+ 30, 36, 8, 0, 1, 5, 7, 16, 27, 0, 30, 10, 14, 27, 41, 69, 25,
2457
+ 10, 11, 20, 33, 5, 7, 0, 1, 5, 5, 5, 5, 7, 11, 15, 5, 14, 6,
2458
+ 6, 7, 28, 0, 5, 14, 2, 2, 3, 8, 10, 12, 1, 1, 9, 22, 3, 3, 5,
2459
+ 15, 18, 22, 37)),
2460
+ class = "data.frame", row.names = 1:146)
2461
+ step(aov(log(Days+2.5) ~ .^4, data=Quine))
2462
+ set.seed(11)
2463
+ DF <- data.frame(y=rnorm(21), `x 1`=-10:10., check.names = FALSE)
2464
+ lm(y ~ ., data = DF)
2465
+ (fm <- lm(y ~ `x 1` + I(`x 1`^2), data = DF))
2466
+ step(fm)
2467
+
2468
+ N <- c(0,1,0,1,1,1,0,0,0,1,1,0,1,1,0,0,1,0,1,0,1,1,0,0)
2469
+ P <- c(1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,1,1,0,0,1,0,1,1,0)
2470
+ K <- c(1,0,0,1,0,1,1,0,0,1,0,1,0,1,1,0,0,0,1,1,1,0,1,0)
2471
+ yield <- c(49.5,62.8,46.8,57.0,59.8,58.5,55.5,56.0,62.8,55.8,69.5,55.0,
2472
+ 62.0,48.8,45.5,44.2,52.0,51.5,49.8,48.8,57.2,59.0,53.2,56.0)
2473
+ npk <- data.frame(`block no`=gl(6,4), N=factor(N), P=factor(P),
2474
+ K=factor(K), yield=yield, check.names=FALSE)
2475
+ op <- options(contrasts=c("contr.helmert", "contr.treatment"))
2476
+ (npk.aovE <- aov(yield ~ N*P*K + Error(`block no`), npk))
2477
+ summary(npk.aovE)
2478
+ model.tables(npk.aovE)
2479
+ model.tables(npk.aovE, "means")
2480
+ options(op)# reset to previous
2481
+ ## Didn't work before 1.8.0
2482
+
2483
+
2484
+ ## cmdscale
2485
+ ## failed in versions <= 1.4.0 :
2486
+ cm1 <- cmdscale(eurodist, k=1, add=TRUE, x.ret = TRUE)
2487
+ cmdsE <- cmdscale(eurodist, k=20, add = TRUE, eig = TRUE, x.ret = TRUE)
2488
+ # FAILED on Debian testing just prior to 1.9.0!
2489
+ #stopifnot(identical(cm1$x, cmdsE$x),
2490
+ # identical(cm1$ac, cmdsE$ac))
2491
+ stopifnot(all.equal(cm1$x, cmdsE$x),
2492
+ all.equal(cm1$ac, cmdsE$ac))
2493
+ ## end of moved from cmdscale.Rd
2494
+
2495
+
2496
+ ## cutree
2497
+ hc <- hclust(dist(USArrests))
2498
+ ct <- cutree(hc, h = c(0, hc$height[c(1,49)], 1000))
2499
+ stopifnot(ct[,"0"]== 1:50,
2500
+ unique(ct[,2]) == 1:49,
2501
+ ct[,3] == ct[,4],
2502
+ ct[,4] == 1)
2503
+ ## end of moved from cutree.Rd
2504
+
2505
+
2506
+ ## princomp
2507
+ USArrests[1, 2] <- NA
2508
+ pc.cr <- princomp(~ Murder + Assault + UrbanPop,
2509
+ data = USArrests, na.action=na.exclude, cor = TRUE)
2510
+ update(pc.cr, ~ . + Rape)
2511
+ ## end of moved from princomp.Rd
2512
+
2513
+
2514
+ ## arima{0}
2515
+ (fit <- arima(lh, c(1,0,0)))
2516
+ tsdiag(fit)
2517
+ (fit <- arima0(lh, c(1,0,0)))
2518
+ tsdiag(fit)
2519
+ ## end of moved from arima{0}.Rd
2520
+
2521
+
2522
+ ## predict.arima
2523
+ predict(arima(lh, order=c(1,0,1)), n.ahead=5)
2524
+ predict(arima(lh, order=c(1,1,0)), n.ahead=5)
2525
+ predict(arima(lh, order=c(0,2,1)), n.ahead=5)
2526
+ ## end of moved from predict.arima.Rd
2527
+
2528
+
2529
+ library(splines)
2530
+ ## ns
2531
+ ## Consistency:
2532
+ x <- c(1:3,5:6)
2533
+ stopifnot(identical(ns(x), ns(x, df = 1)),
2534
+ !is.null(kk <- attr(ns(x), "knots")),# not true till 1.5.1
2535
+ length(kk) == 0)
2536
+ ## end of moved from ns.Rd
2537
+
2538
+
2539
+ ## predict.bs
2540
+ ## Consistency:
2541
+ basis <- ns(women$height, df = 5)
2542
+ newX <- seq(58, 72, len = 51)
2543
+ wh <- women$height
2544
+ bbase <- bs(wh)
2545
+ nbase <- ns(wh)
2546
+ stopifnot(identical(predict(basis), predict(basis, newx=wh)),
2547
+ identical(predict(bbase), predict(bbase, newx=wh)),
2548
+ identical(predict(nbase), predict(nbase, newx=wh)))
2549
+ ## end of moved from predict.bs.Rd
2550
+
2551
+
2552
+ ## internal coerceVector() was too lenient
2553
+ plot(1)
2554
+ r <- try(strwidth(plot))## Error: cannot coerce
2555
+ stopifnot(inherits(r, "try-error"),
2556
+ grep("cannot coerce", r) == 1)
2557
+ ## gave seg.fault or memory allocation error before 1.8.0
2558
+
2559
+
2560
+ ## rank sometimes kept and sometimes dropped names
2561
+ x2 <- c(3, 1, 4, 1, 5, NA, 9, 2, 6, 5, 3, 5)
2562
+ names(x2) <- letters[1:12]
2563
+ (y1 <- rank(x2))
2564
+ (y2 <- rank(x2, na.last=FALSE))
2565
+ (y3 <- rank(x2, na.last=NA))
2566
+ (y4 <- rank(x2, na.last="keep"))
2567
+ stopifnot(identical(names(y1), names(x2)),
2568
+ identical(names(y2), names(x2)),
2569
+ identical(names(y4), names(x2)),
2570
+ identical(names(y3), names(x2)[-6]))
2571
+ ##
2572
+
2573
+ ## as.dist(x) only obeyed `diag=TRUE' or `upper=TRUE' when x was "dist" already
2574
+ m <- as.matrix(dist(matrix(rnorm(100), nrow=5)))
2575
+ stopifnot(identical(TRUE, attr(as.dist(m, diag=TRUE), "Diag")))
2576
+ ## failed previous to 1.8.0
2577
+
2578
+ stopifnot(1:2 == ave(1:2,factor(2:3,levels=1:3)))
2579
+ ## gave "2 NA" previous to 1.8.0, because unused levels weren't dropped
2580
+
2581
+
2582
+ ## PR#4092: arrays with length(dim(.)) = 1
2583
+ z <- array(c(-2:1, 1.4),5)
2584
+ cz <- crossprod(as.vector(z))
2585
+ dimnames(z) <- list(letters[1:5])
2586
+ z0 <- z
2587
+ names(dimnames(z)) <- "D1"
2588
+ stopifnot(crossprod(z) == cz,# the first has NULL dimnames
2589
+ identical(crossprod(z), crossprod(z0)),
2590
+ identical(crossprod(z), crossprod(z,z0)))
2591
+ ## crossprod(z) segfaulted (or gave silly error message) before 1.8.0
2592
+
2593
+
2594
+ ## PR#4431
2595
+ stopifnot(!is.na(rmultinom(12,100, c(3, 4, 2, 0,0))))
2596
+ ## 3rd line was all NA before 1.8.0
2597
+
2598
+
2599
+ ## PR#4275: getAnywhere with extra "."
2600
+ g0 <- getAnywhere("predict.loess")
2601
+ g1 <- getAnywhere("as.dendrogram.hclust")
2602
+ g2 <- getAnywhere("predict.smooth.spline")
2603
+ g3 <- getAnywhere("print.data.frame")
2604
+ is.S3meth <- function(ga) any(substr(ga$where, 1,20) == "registered S3 method")
2605
+ stopifnot(is.S3meth(g0), is.S3meth(g1),
2606
+ is.S3meth(g2), is.S3meth(g3))
2607
+ ## all but g0 failed until 1.8.0 (Oct 6)
2608
+
2609
+
2610
+ ## symnum(x) for length 0 and some logical arrays:
2611
+ sm <- symnum(m <- matrix(1:8 %% 3 == 0, 2))
2612
+ stopifnot(identical(symnum(FALSE[FALSE]), noquote(""[FALSE])),
2613
+ identical(symnum(c(m)), c(symnum(m))),
2614
+ dim(sm) == dim(m), class(sm) == "noquote")
2615
+ ## symnum(<length 0>) gave noquote("()") before 1.8.1
2616
+
2617
+
2618
+ ## abbreviate with leading (or trailing) space differences (PR#4564)
2619
+ abbreviate(c("A"," A"), 4)
2620
+ ## this gave infinite loop before 1.8.1
2621
+
2622
+
2623
+ ## crossprod on 0-extent matrices
2624
+ a <- matrix(,0,5)
2625
+ stopifnot(crossprod(a) == 0)
2626
+ stopifnot(crossprod(a,a) == 0)
2627
+ stopifnot(crossprod(a+0i) == 0+0i)
2628
+ ## were random areas in <= 1.8.0
2629
+
2630
+
2631
+ ## DF[[i, j]] should be row i, col j
2632
+ stopifnot(women[[2, 1]] == women[2, 1])
2633
+ women[[2, 1]] <- 77
2634
+ stopifnot(women[2, 1] == 77)
2635
+ ## was reversed from May 2002 to Oct 2003
2636
+
2637
+
2638
+ ## merge.data.frame with a single-column df (PR#4299)
2639
+ x <- data.frame(x = 1:5, y = letters[1:5])
2640
+ y <- data.frame(z = 1:2)
2641
+ z <- merge(x, y)
2642
+ stopifnot(identical(names(z), c("x", "y", "z")))
2643
+ ## third name was wrong in 1.8.0
2644
+
2645
+
2646
+ ## cor(mat, use = "pair") was plainly wrong
2647
+ # longley has no NA's -- hence all "use = " should give the same!
2648
+ X <- longley
2649
+ ep <- 32 * Meps
2650
+ for(meth in eval(formals(cor)$method)) {
2651
+ cat("method = ", meth,"\n")
2652
+ Cl <- cor(X, method = meth)
2653
+ stopifnot(all.equal(Cl, cor(X, method= meth, use= "complete"), tol=ep),
2654
+ all.equal(Cl, cor(X, method= meth, use= "pairwise"), tol=ep),
2655
+ all.equal(Cl, cor(X, X, method= meth), tol=ep),
2656
+ all.equal(Cl, cor(X, X, method= meth, use= "pairwise"), tol=ep),
2657
+ all.equal(Cl, cor(X, X, method= meth, use= "pairwise"), tol=ep)
2658
+ )
2659
+ }
2660
+ ## "pairwise" failed in 1.8.0
2661
+
2662
+
2663
+ ## regexpr(*, fixed=TRUE) had 0-index from C
2664
+ txt <- c("english", "french", "swiss")
2665
+ ir <- regexpr("en", txt, fixed = TRUE)
2666
+ stopifnot(ir == c(1, 3, -1),
2667
+ identical(ir, regexpr("en", txt)))
2668
+ ## (*, fixed=TRUE) gave 0 2 -1 before R 1.8.1
2669
+
2670
+
2671
+ ## PR#5017: filter(init=) had the wrong time order
2672
+ xx <- filter(4:8, c(1, 0.5, 0.25), method="recursive", init=3:1)
2673
+ stopifnot(identical(xx[1:3], c(8.25, 15.25, 26.125)))
2674
+ ## 1.8.0 gave 6.75 12.75 22.375
2675
+
2676
+
2677
+ ## PR#5090 user error with writeChar could segfault
2678
+ tf <- tempfile()
2679
+ zz <- file(tf, "wb")
2680
+ writeChar("", zz, nchars=10000000)
2681
+ close(zz)
2682
+ unlink(tf)
2683
+ ## segfaults in 1.8.0
2684
+
2685
+
2686
+ ## PR#4710 round (and signif) dropped attributes
2687
+ x <- round(matrix(0, 0, 3))
2688
+ stopifnot(identical(dim(x), as.integer(c(0, 3))))
2689
+ ## numeric(0) in 1.8.0
2690
+
2691
+
2692
+ ## PR#5405
2693
+ try(stepfun(c(), 1)(2))# > Error
2694
+ ## segfaults in 1.8.1 and earlier
2695
+
2696
+
2697
+ ## PR#4955 now allow embedded newlines in quoted fields in read.table
2698
+ temp <- tempfile()
2699
+ data <- data.frame(a=c("c", "e\nnewline"))
2700
+ write.table(data, sep=",", row.names=FALSE, file=temp)
2701
+ data2 <- read.csv(temp)
2702
+ unlink(temp)
2703
+ # attributes get a different order here
2704
+ stopifnot(identical(data$a, data2$a))
2705
+ ## not allowed prior to 1.9.0
2706
+
2707
+
2708
+ ## scoping problems with model.frame methods
2709
+ foo <- c(1,1,0,0,1,1)
2710
+ rep <- 1:6
2711
+ m <- lm(foo ~ rep, model=FALSE)
2712
+ model.matrix(m)
2713
+ n <- 1:6
2714
+ m <- lm(foo ~ n, model=FALSE)
2715
+ model.matrix(m)
2716
+ ## failed in 1.8.0 because the wrong n or rep was found.
2717
+ rm(foo, rep)
2718
+ func <- function()
2719
+ {
2720
+ foo <- c(1,1,0,0,1,1)
2721
+ rep <- 1:6
2722
+ m <- lm(foo ~ rep, model=FALSE)
2723
+ model.matrix(m)
2724
+ }
2725
+ func()
2726
+ ##
2727
+
2728
+
2729
+ ## broken strptime in glibc (and code used on Windows)
2730
+ # the spec says %d is allowed in 1-31, but it seems HP-UX thinks
2731
+ # the date is invalid.
2732
+ # stopifnot(!is.na(strptime("2003-02-30", format="%Y-%m-%d")))
2733
+ stopifnot(is.na(strptime("2003-02-35", format="%Y-%m-%d")))
2734
+ # this one is still wrong in glibc
2735
+ stopifnot(is.na(strptime("2003-02-40", format="%Y-%m-%d")))
2736
+ stopifnot(is.na(strptime("2003-22-20", format="%Y-%m-%d")))
2737
+ # and so is this one
2738
+ stopifnot(is.na(strptime("2003 22 20", format="%Y %m %d")))
2739
+ stopifnot(is.na(ISOdate(year=2003, month=22, day=20)))
2740
+ ## several after the first gave non-NA values in 1.8.1 on some broken OSes
2741
+
2742
+
2743
+ ## PR#4688
2744
+ reli <- cbind(Si = c(2121, 100, 27, 0),
2745
+ av = c(4700, 216, 67, 0),
2746
+ Nc = c(6234,2461,502,14))
2747
+ stopifnot(inherits(try(fisher.test(reli, workspace=2000000)), "try-error"))
2748
+ ## gave p.value = Inf ; now gives FEXACT error 501
2749
+
2750
+
2751
+ ## PR#5701
2752
+ chisq.test(matrix(23171,2,2), simulate=TRUE)
2753
+ ## gave infinite loop in 1.8.1 and earlier
2754
+
2755
+
2756
+ ## as.matrix on an all-logical data frame
2757
+ ll <- data.frame(a = rpois(10,1) > 0, b = rpois(10,1) > 0)
2758
+ stopifnot(mode(as.matrix(ll)) == "logical")
2759
+ lll <- data.frame(a = LETTERS[1:10], b = rpois(10,1) > 0)
2760
+ stopifnot(mode(as.matrix(lll)) == "character")
2761
+ ## both were char before 1.9.0
2762
+
2763
+
2764
+ ## outer called rep with a non-generic arg
2765
+ x <- .leap.seconds[1:6]
2766
+ outer(x, x, "<")
2767
+ outer(x, x, "-")
2768
+ (z <- outer(x, x, "difftime", units="days"))
2769
+ stopifnot(class(z) == "difftime")
2770
+ ## failed in 1.8.1
2771
+
2772
+
2773
+ ## PR#5900 qbinom when probability is 1
2774
+ stopifnot(qbinom(0.95, 10, 1) == 10)
2775
+ stopifnot(qbinom(0, 10, 1) == 0)
2776
+ # and for prob = 0
2777
+ stopifnot(qbinom(0.95, 10, 0) == 0)
2778
+ stopifnot(qbinom(0, 10, 0) == 0)
2779
+ # and size = 0
2780
+ stopifnot(qbinom(0.95, 0, 0.5) == 0)
2781
+ ## 1.8.1 was programmed to give NaN
2782
+
2783
+
2784
+ ## base:: and ::: were searching in the wrong places
2785
+ stopifnot(inherits(try(base::lm), "try-error"))
2786
+ stopifnot(inherits(try(graphics::log), "try-error"))
2787
+ ## equivalent constructs succeeded in 1.8.1
2788
+
2789
+
2790
+ ## (PR#6452) princomp prediction without specifying centers should give NAs
2791
+ x <- matrix(rnorm(400), ncol=4)
2792
+ fit <- princomp(covmat=cov(x))
2793
+ stopifnot(is.null(fit$scores))
2794
+ stopifnot(is.na(predict(fit, newdata=x[1:10, ])))
2795
+ ## failed in 1.8.1
2796
+
2797
+
2798
+ ## (PR#6451) regex functions did not coerce args to character.
2799
+ sub(x=NA, pattern="x", replacement="y")
2800
+ ## failed in 1.8.1
2801
+
2802
+
2803
+ ## length<- needed a factor method, and so needed to be generic
2804
+ aa <- factor(letters)
2805
+ length(aa) <- 20
2806
+ aa
2807
+ stopifnot(is.factor(aa))
2808
+ ## returned a vector in 1.8.1
2809
+
2810
+
2811
+ ## spec.pgram() was too
2812
+ pAR <- c(2.7607, -3.82, 2.6535, -0.9238)
2813
+ N <- 1 + 2^14# 16385
2814
+ set.seed(123)
2815
+ x <- arima.sim(model = list(ar = pAR), n = N)
2816
+ spP <- spec.pgram(x, spans = 41, plot=FALSE)
2817
+ spA <- spec.ar(x=list(ar=pAR, order=4, var.pred=1, frequency=1),
2818
+ n.freq = spP$n.used %/% 2, plot=FALSE)
2819
+ r <- spP$spec / spA$spec
2820
+ stopifnot(abs(mean(r) - 1) < 0.003)
2821
+ ## was 0.0268 in R 1.8.1
2822
+
2823
+
2824
+ ## check for a Microsoft bug in timezones ahead of GMT
2825
+ stopifnot(!is.na(as.POSIXct("1970-01-01 00:00:00")))
2826
+ ##
2827
+
2828
+
2829
+ ## PR#6672, split.default on factors
2830
+ x <- c(NA, 1, 2)
2831
+ y <- as.factor(x)
2832
+ split(x, y)
2833
+ split(y, y) # included NAs in 1.8.1
2834
+ r1 <- tapply(x, y, length)
2835
+ r2 <- tapply(y, y, length)
2836
+ stopifnot(r1 == r2)
2837
+ ##
2838
+
2839
+
2840
+ ## PR#6652, points.formula with subset and extra arguments.
2841
+ roller <-
2842
+ data.frame(weight = c(1.9, 3.1, 3.3, 4.8, 5.3, 6.1, 6.4, 7.6, 9.8, 12.4),
2843
+ depression = c(2, 1, 5, 5, 20, 20, 23, 10, 30, 25))
2844
+ plot(depression ~ weight, data=roller, type="n")
2845
+ with(roller, points( depression~weight, subset=8:10, col=2))
2846
+ with(roller, points( depression~weight, subset=8:10, col=2:4))
2847
+ plot(depression ~ weight, data=roller, type="n")
2848
+ points(depression~weight, subset=8:10, col=2:4, data=roller)
2849
+ ## first two gave error in 1.8.1
2850
+
2851
+
2852
+ ## PR#4558 part 2
2853
+ x <- seq(as.POSIXct("2004-03-25"), as.POSIXct("2004-03-31"), by="DSTdays")
2854
+ stopifnot(length(x) == 7)
2855
+ ## was length 6 in the UK time zone.
2856
+
2857
+
2858
+ ## PR#6702 c/rbind on list matrices
2859
+ A <- matrix(as.list(1:4), 2, 2)
2860
+ (res <- cbind(A, A))
2861
+ stopifnot(typeof(res) == "list")
2862
+ (res <- rbind(A, A))
2863
+ stopifnot(typeof(res) == "list")
2864
+ ## were not implemented in 1.8.1
2865
+
2866
+
2867
+ ## Date objects with NA's
2868
+ (t1 <- strptime(c("6. Aug. 1930", "3. Nov. 1925", "28. Mar. 1959",
2869
+ NA, paste(1:29," Feb. 1960", sep=".")),
2870
+ format = "%d. %b. %Y"))
2871
+ stopifnot(6 == length(print(s1 <- summary(t1))),
2872
+ s1== summary(as.POSIXct(t1)),
2873
+ 6 == length(print(format(as.Date(s1)))) )
2874
+ ## gave bizarre "NA's" entry in R 1.8.1 and 1.9.0alpha
2875
+
2876
+
2877
+ ## as.Date on a factor
2878
+ as.Date(factor("2000-01-02"))
2879
+ ## failed in 1.9.0
2880
+
2881
+
2882
+ ## as.data.frame.list (PR#6782)
2883
+ xx <- list(row.names=1:2,foxglove=3:4,toadflax=5:6)
2884
+ foo <- as.data.frame(xx)
2885
+ stopifnot(identical(names(xx), names(foo)))
2886
+ ## 1.9.0 changed the last name to "x".
2887
+
2888
+
2889
+ ## type.convert quirk (PR#6781)
2890
+ res1 <- type.convert( c("abc","-"), as.is=TRUE, na.strings="-" )
2891
+ stopifnot(identical(mode(res1), "character"), is.na(res1[2]))
2892
+ ## res1[2] was "-" <= 1.9.0.
2893
+
2894
+
2895
+ ## subsetting factor swaps order of attributes (PR#6799)
2896
+ af <- factor(c('A','B'))
2897
+ stopifnot(identical(af, af[1:2]))
2898
+ ## failed in 1.9.0 as the attributes were class, level for af[1:2]
2899
+
2900
+
2901
+ ## Comparison between lists and expressions
2902
+ stopifnot(inherits(try(list(1) <= list(2)), "try-error"))
2903
+ e <- expression(3 + 2 * 4)
2904
+ stopifnot(inherits(try(e == e), "try-error"))
2905
+ ## both were allowed but nonsense in 1.9.0
2906
+
2907
+
2908
+ ## "nowhere" interpolation (PR#6809)
2909
+ try(approx(list(x=rep(NaN, 9), y=1:9), xout=NaN))
2910
+ ## gave a seg.fault in 1.9.0
2911
+
2912
+
2913
+ ## aggregate.data.frame failed if result would have one row
2914
+ ## Philippe Hup�, R-help, 2004-05-14
2915
+ dat <- data.frame(a=rep(2,10),b=rep("a",10))
2916
+ aggregate(dat$a, by=list(a1=dat$a, b1=dat$b), NROW)
2917
+ ## failed due to missing drop = FALSE
2918
+
2919
+
2920
+ ## [<-.data.frame with a data-frame value
2921
+ x <- data.frame(a=1:3, b=4:6, c=7:9)
2922
+ info <- x[1:2]
2923
+ x[, names(info)] <- info[1,]
2924
+ ##
2925
+
2926
+
2927
+ ## as.dendrogram.hclust()
2928
+ d <- as.dendrogram(hEU <- hclust(eurodist, "ave"))
2929
+ stopifnot(order.dendrogram(d) == hEU$order)# not new
2930
+ ##N require(gclus); hE1 <- reorder.hclust(hEU, dis)
2931
+ ## reconstruct without gclus (for R's testing)
2932
+ hE2 <- hEU; ii <- c(5,9:11, 13, 15:18); hE2$merge[ii,] <- hEU$merge[ii, 2:1]
2933
+ hE2$order <- as.integer(c(1,19,9,12,14,2,15,8,13,16,17,21,6,3,11,4,18,5,10,7,20))
2934
+ ##N stopifnot(identical(hE1, hE2))
2935
+ d1 <- as.dendrogram(hE2)
2936
+ stopifnot(order.dendrogram(d1) == hE2$order,
2937
+ identical(d1, rev(rev(d1))))
2938
+ ## not true in 1.9.0
2939
+
2940
+
2941
+ ## trunc on a Date
2942
+ trunc(xx <- Sys.Date()) # failed in 1.9.1
2943
+ x <- xx + 0.9
2944
+ stopifnot(identical(trunc(x), xx)) # gave next day in 1.9.1
2945
+ xx <- as.Date("1960-02-02")
2946
+ x <- xx + 0.2
2947
+ stopifnot(identical(trunc(x), xx)) # must not truncate towards 0.
2948
+ ##
2949
+
2950
+ ### end of tests added in 1.9.1 ###
2951
+
2952
+ ## 1.9.1 patched
2953
+
2954
+ ## options(list('..', '..'))
2955
+ try(options(list('digits', 'width')))# give an error
2956
+ ## gave a segfault in 1.9.1
2957
+
2958
+
2959
+ ## PR#7100 seg faulted or path too long error on ././././././. ...
2960
+ length( list.files('.', all.files = TRUE, recursive = TRUE) )
2961
+
2962
+
2963
+ ## PR#7116 segfaulted on A, later versions segfaulted on B or gave different
2964
+ ## dims for the results.
2965
+ A <- cor(as.array(c(a=1,b=2)), cbind(1:2))
2966
+ B <- cor(cbind(1:2), as.array(c(a=1,b=2)))
2967
+ stopifnot(identical(A, B))
2968
+
2969
+
2970
+ ## regression test for PR#7108
2971
+ ans <- gsub(" ", "", "b c + d | a * b", perl=TRUE) # NULL in 1.9.1
2972
+ stopifnot(identical(ans, gsub(" ", "", "b c + d | a * b")))
2973
+ gsub(" ", "", "a: 12345 :a", perl=TRUE) # segfaulted in 1.9.1
2974
+ ## wrong answers, segfaults in 1.9.1.
2975
+
2976
+
2977
+ ## regression test for PR#7132
2978
+ tmp <- data.frame(y=rnorm(8),
2979
+ aa=factor(c(1,1,1,1,2,2,2,2)),
2980
+ bb=factor(c(1,1,2,2,1,1,2,2)),
2981
+ cc=factor(c(1,2,3,4,1,2,3,4)))
2982
+ tmp.aov <- aov(y ~ cc + bb/aa, data=tmp)
2983
+ anova(tmp.aov)
2984
+ model.tables(tmp.aov, type="means")
2985
+ ## failed in 1.9.1.
2986
+
2987
+ if(require(survival, quietly = TRUE)) { # required package
2988
+ a <- Surv(1:4, 2:5, c(0,1,1,0))
2989
+ str(a)
2990
+ str(a[rep(1:4,3)], vec.len = 7)
2991
+ detach("package:survival")
2992
+ }
2993
+
2994
+ ### end of tests added in 1.9.1 patched ###
2995
+
2996
+
2997
+ ## names in columns of data frames
2998
+ x <- 1:10
2999
+ names(x) <- letters[x]
3000
+ DF <- data.frame(x=x)
3001
+ (nm <- names(DF$x))
3002
+ stopifnot(is.null(nm))
3003
+ DF$y1 <- x
3004
+ DF["y2"] <- x
3005
+ DF[, "y3"] <- x
3006
+ DF[["y4"]] <- x
3007
+ stopifnot(is.null(names(DF$y1)), is.null(names(DF$y2)),
3008
+ is.null(names(DF$y3)), is.null(names(DF$y4)))
3009
+ # names were preserved in 1.9.x
3010
+ # check factors
3011
+ xx <- as.factor(x)
3012
+ DF <- data.frame(x=xx)
3013
+ (nm <- names(DF$xx))
3014
+ stopifnot(is.null(nm))
3015
+ DF$y1 <- xx
3016
+ DF["y2"] <- xx
3017
+ DF[, "y3"] <- xx
3018
+ DF[["y4"]] <- xx
3019
+ stopifnot(is.null(names(DF$y1)), is.null(names(DF$y2)),
3020
+ is.null(names(DF$y3)), is.null(names(DF$y4)))
3021
+ # how about AsIs? This should preserve names
3022
+ DF <- data.frame(x=I(x))
3023
+ (nm <- names(DF$x))
3024
+ stopifnot(identical(nm, names(x)))
3025
+ DF2 <- rbind(DF, DF[7:8,, drop=FALSE])
3026
+ (nm <- names(DF2$x))
3027
+ stopifnot(identical(nm, c(names(x), names(x)[7:8])))
3028
+ # and matrices? Ordinary matrices will be split into columns
3029
+ x <- 1:10
3030
+ dim(x) <- c(5,2)
3031
+ dimnames(x) <- list(letters[1:5], c("i", "ii"))
3032
+ DF <- data.frame(x=I(x))
3033
+ DF2 <- rbind(DF, DF)
3034
+ (rn <- rownames(DF2$x))
3035
+ stopifnot(identical(rn, c(rownames(x), rownames(x))))
3036
+ class(x) <- "model.matrix"
3037
+ DF <- data.frame(x=x)
3038
+ DF2 <- rbind(DF, DF)
3039
+ (rn <- rownames(DF2$x))
3040
+ stopifnot(identical(rn, c(rownames(x), rownames(x))))
3041
+ ## names were always preserved in 1.9.x, but rbind dropped names and dimnames.
3042
+
3043
+
3044
+ ## cumsum etc dropped names
3045
+ x <- rnorm(10)
3046
+ names(x) <- nm <- letters[1:10]
3047
+ stopifnot(identical(names(cumsum(x)), nm),
3048
+ identical(names(cumprod(x)), nm),
3049
+ identical(names(cummax(x)), nm),
3050
+ identical(names(cummin(x)), nm))
3051
+ x <- x+1i
3052
+ stopifnot(identical(names(cumsum(x)), nm),
3053
+ identical(names(cumprod(x)), nm))
3054
+ ## 1.9.x dropped names
3055
+
3056
+ ## cumsum etc preserve NAs
3057
+ # double
3058
+ x <- c(1, NA, 3)
3059
+ r <- c(1, NA, NA)
3060
+ stopifnot(identical(cumsum(x), r))
3061
+ stopifnot(identical(cumprod(x), r))
3062
+ stopifnot(identical(cummin(x), r))
3063
+ stopifnot(identical(cummax(x), r))
3064
+ # complex
3065
+ x <- c(1+1i, NA, 3)
3066
+ r <- c(1+1i, NA, NA)
3067
+ stopifnot(identical(cumsum(x), r))
3068
+ stopifnot(identical(cumprod(x), r))
3069
+ # integer
3070
+ x <- c(1L, NA, 3L)
3071
+ r <- c(1L, NA, NA)
3072
+ stopifnot(identical(cumsum(x), r))
3073
+ stopifnot(identical(cumprod(x), c(1, NA, NA))) # returns double
3074
+ stopifnot(identical(cummin(x), r))
3075
+ stopifnot(identical(cummax(x), r))
3076
+
3077
+ ## complex superassignments
3078
+ e <- c(a=1, b=2)
3079
+ f <- c(a=1, b=2)
3080
+ g <- e
3081
+ h <- list(a=1, list(b=2, list(c=3, d=4), list(e=5)))
3082
+ j <- matrix(1, 2, 2)
3083
+ a <- "A"
3084
+ local({
3085
+ eold <- e <- c(A=10, B=11)
3086
+ hold <- h <- 2
3087
+ jold <- j <- 7
3088
+ gold <- g <- e
3089
+ a <- "B"
3090
+
3091
+ e[2] <<- e[2]+1
3092
+ names(f)[2] <<- a
3093
+ g <<- 1
3094
+ h[[2]][[h]][[ f[e==10] ]] <<- h
3095
+ names(h[[2]][[h]])[f[e==10] ] <<- a
3096
+ j[h, h] <<- h
3097
+ colnames(j)[2] <<- a
3098
+
3099
+ stopifnot(identical(e, eold))
3100
+ stopifnot(identical(h, hold))
3101
+ stopifnot(identical(g, gold))
3102
+ stopifnot(identical(j, jold))
3103
+ })
3104
+
3105
+ stopifnot(identical(e, c(a=1, b=12)))
3106
+ stopifnot(identical(f, c(a=1, B=2)))
3107
+ stopifnot(identical(g, 1))
3108
+ stopifnot(identical(h, list(a=1, list(b=2, list(B=2, d=4), list(e=5)))))
3109
+ stopifnot(identical(as.vector(j), c(1, 1, 1, 2)))
3110
+ stopifnot(identical(colnames(j), c(NA,"B")))
3111
+ ## gave error 'subscript out of bounds' in 1.9.1
3112
+
3113
+ ## make sure we don't get cycles out of changes to subassign3.
3114
+ x <- list(a=1, y=2)
3115
+ x$a <- x
3116
+ print(x)
3117
+ x$d <- x
3118
+ print(x)
3119
+ y <- x
3120
+ x$b <- y
3121
+ print(x)
3122
+ x$f <- y
3123
+ print(x)
3124
+ ##
3125
+
3126
+
3127
+ ## model.frame incorrectly preserved ts attributes
3128
+ x1 <- ts(c(1:10, NA))
3129
+ y1 <- ts(rnorm(11))
3130
+ lm(y1 ~ x1)
3131
+ lm(y1 ~ x1 + I(x1^2)) # second term has two classes
3132
+ ## failed in 1.9.1
3133
+
3134
+
3135
+ ## range checks missing in recursive assignments (PR#7196)
3136
+ l <- list()
3137
+ try(l[[2:3]] <- 1)
3138
+ l <- list(x=2)
3139
+ try(l[[2:3]] <- 1)
3140
+ l <- list(x=2, y=3)
3141
+ l[[2:3]] <- 1
3142
+ ## first two segfaulted in 1.9.x
3143
+
3144
+
3145
+ ## apply() on an array of dimension >=3 AND when for each iteration
3146
+ ## the function returns a named vector of length >=2 (PR#7205)
3147
+ a <- array(1:24, dim=2:4)
3148
+ func1 <- function(x) c(a=mean(x), b=max(x))
3149
+ apply(a, 1:2, func1)
3150
+ ## failed in 1.9.1
3151
+
3152
+
3153
+ # col2rgb must return a matrix for a single colour
3154
+ stopifnot(is.matrix(col2rgb("red")))
3155
+ ## was vector at one point in pre-2.0.0
3156
+
3157
+
3158
+ ## Subscripting matrices with NA's
3159
+ AAA <- array(1:6, c(6,1,1))
3160
+ idx <- c(1,2,NA,NA,5,6)
3161
+ B <- 10
3162
+ AAA[idx,1,1] <- B
3163
+ stopifnot(all.equal(as.vector(AAA), c(10,10,3,4,10,10)))
3164
+ ## assigned only the first two elements in 1.9.1.
3165
+ ## Tests for >= 2.0.0
3166
+ A <- c(1,2,3,4,5,6)
3167
+ A[idx] <- 27 # OK, one value
3168
+ stopifnot(identical(A, c(27,27,3,4,27,27)))
3169
+ try(A[idx] <- 6:1) # was 6 5 3 4 2 1 in 1.9.1
3170
+ stopifnot(inherits(.Last.value, "try-error"))
3171
+
3172
+ AA <- matrix(c(1,2,3,4,5,6), 6, 1)
3173
+ AA[idx,] <- 27 # OK, one value
3174
+ stopifnot(identical(AA, matrix(c(27,27,3,4,27,27), 6, 1)))
3175
+ try(AA[idx,] <- 6:1) # was 6 5 3 4 4 3 in 1.9.1
3176
+ stopifnot(inherits(.Last.value, "try-error"))
3177
+
3178
+ AAA <- array(c(1,2,3,4,5,6), c(6,1,1))
3179
+ AAA[idx,,] <- 27 # OK, one value
3180
+ stopifnot(identical(AAA, array(c(27,27,3,4,27,27), c(6,1,1))))
3181
+ try(AAA[idx,,] <- 6:1) # was 6 5 3 4 5 6 in 1.9.1
3182
+ stopifnot(inherits(.Last.value, "try-error"))
3183
+ ## only length-1 values are allowed in >= 2.0.0.
3184
+
3185
+
3186
+ ## hist with infinite values (PR#7220)
3187
+ hist(log(-5:100), plot = FALSE)
3188
+ ## failed in 1.9.1: will warn, correctly.
3189
+
3190
+
3191
+ ## merge problem with names/not in rbind.data.frame
3192
+ x <- structure(c("a", "b", "2", "0.2-26", "O", "O"), dim = 2:3,
3193
+ dimnames = list(c("1", "2"), c("P", "V", "2")))
3194
+ y <- structure(c("a", "b", "2", "0.2-25", "O", "O"), dim = 2:3,
3195
+ dimnames = list(c("1", "2"), c("P", "V", "1")))
3196
+ merge(x, y, all.y = TRUE)
3197
+ ## failed for a while in pre-2.0.0
3198
+
3199
+
3200
+ ## matrix responses in binomial glm lost names prior to 2.0.0
3201
+ y <- rbinom(10, 10, 0.5)
3202
+ x <- 1:10
3203
+ names(y) <- letters[1:10]
3204
+ ym <- cbind(y, 10-y)
3205
+ fit2 <- glm(ym ~ x, binomial)
3206
+ stopifnot(identical(names(resid(fit2)), names(y)))
3207
+ ## Note: fit <- glm(y/10 ~ x, binomial, weights=rep(10, 10))
3208
+ ## Does not preserve names in R < 2.0.1, but does in S.
3209
+ fit <- glm(y/10 ~ x, binomial, weights=rep(10, 10))
3210
+ stopifnot(identical(names(resid(fit)), names(y)))
3211
+ ## The problem was glm.fit assumed a vector response.
3212
+
3213
+
3214
+ ## dlogis(-2000) was NaN in <= 2.0.0.
3215
+ stopifnot(identical(dlogis(-2000), 0.0))
3216
+ ##
3217
+
3218
+
3219
+ ## short vectors in spline[fun] (PR#7290)
3220
+ try(splinefun(1[0], 1[0])(1)) # segfault in <= 2.0.0
3221
+ for(meth in c("fmm", "nat", "per"))
3222
+ stopifnot(all(splinefun(1, pi, method = meth)(0:2) == rep(pi, 3)))
3223
+ ## exactly constant for n=1; was NA for "periodic" in <= 2.0.0
3224
+
3225
+
3226
+ ## ecdf with NAs (part of PR#7292).
3227
+ x <- c(1,2,2,4,7, NA, 10,12, 15,20)
3228
+ ecdf(x)
3229
+ ## failed in <= 2.0.0.
3230
+
3231
+
3232
+ ## Incorrect use of as.Date segfaulted on some x86_64 systems.
3233
+ as.Date("2001", "%Y")
3234
+ ## answer is usually current mon & day, but 2001-01-01 on Solaris.
3235
+
3236
+
3237
+ ## rank and order accepted invalid inputs (and gave nonsense)
3238
+ x1 <- as.list(10:1)
3239
+ x2 <- charToRaw("A test string")
3240
+ stopifnot(inherits(try(order(x1)), "try-error"),
3241
+ inherits(try(order(x2)), "try-error"),
3242
+ inherits(try(rank(x1)), "try-error"),
3243
+ inherits(try(rank(x2)), "try-error"))
3244
+ ## worked but gave 1:n in 2.0.0.
3245
+ stopifnot(inherits(try(sort(x1)), "try-error"),
3246
+ inherits(try(sort(x2)), "try-error"),
3247
+ inherits(try(sort(x1, partial=5)), "try-error"),
3248
+ inherits(try(sort(x2, partial=5)), "try-error"))
3249
+ ##
3250
+
3251
+
3252
+ ## pmax failed with NA inputs
3253
+ pmax(c(1,2,NA), c(3,4,NA), na.rm=TRUE)
3254
+ ## failed after for 2.0.0 change to subassignment
3255
+
3256
+
3257
+ ## subassigning expression could segfault (PR#7326)
3258
+ foo <- expression(alpha, beta, gamma)
3259
+ foo[2]
3260
+ foo[2] <- NA
3261
+ foo
3262
+ ## segfaulted in 2.0.0
3263
+
3264
+
3265
+ ## incorrect arg matching in sum min max prod any all
3266
+ ## Pat Burns, R-devel 2004-11-19
3267
+ stopifnot(identical(sum(1:4, NA, n = 78, na.rm = TRUE), 88))
3268
+ ## was 11 in 2.0.1
3269
+
3270
+
3271
+ ## segfault from text, P Ehlers, R-devel 2004-11-24
3272
+ plot(1:10)
3273
+ loc <- list(5, 6)
3274
+ try(text(loc, labels = "a"))
3275
+ ## segfaulted in 2.0.1
3276
+
3277
+
3278
+ ## automatic row.names can be number-like, MM, 2004-11-26
3279
+ d0 <- data.frame(x=1:3, y=pi*2:0)
3280
+ row.names(d0)[3] <- c("01.00")
3281
+ write.table(d0, (tf <- tempfile()))
3282
+ d <- read.table(tf)
3283
+ ## gave error ("duplicate row.names") in 2.0.1
3284
+ stopifnot(all.equal(d,d0))
3285
+ unlink(tf)
3286
+
3287
+
3288
+ ## seq() should be more consistent in returning "integer"
3289
+ stopifnot(typeof(seq(length=0)) == "integer",
3290
+ identical(seq(length=0), seq(along.with=0[0])),
3291
+ identical(seq(length=3), 1:3),
3292
+ identical(seq(length=3), seq(along.with=1:3)))
3293
+
3294
+
3295
+ ## labels.lm was broken (PR#7417)
3296
+ # part of example(lm)
3297
+ ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
3298
+ trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
3299
+ group <- gl(2,10,20, labels=c("Ctl","Trt"))
3300
+ weight <- c(ctl, trt)
3301
+ lm.D9 <- lm(weight ~ group)
3302
+ stopifnot(labels(lm.D9) == "group")
3303
+ ## failed in 2.0.1, giving length 0
3304
+
3305
+
3306
+ ## sprintf had no length check (PR#7554)
3307
+ a <- matrix (ncol=100, nrow=100, data=c(1,2,3,4,5))
3308
+ a.serial <- rawToChar(serialize(a, NULL, ascii=TRUE))
3309
+ try(sprintf('foo: %s\n', a.serial))
3310
+ ## seqfaulted in 2.0.1
3311
+
3312
+
3313
+ ## all/any did not coerce as the Blue Book described.
3314
+ for(x in c("F", "FALSE", "T", "TRUE", "NA")) {
3315
+ print(all(x))
3316
+ print(any(x))
3317
+ }
3318
+ all(list())
3319
+ any(list())
3320
+ ## all failed in 2.0.1 with 'incorrect argument type'
3321
+
3322
+
3323
+ ##---- named dimnames of %*% and crossprod() -- matrices and 1-d arrays:
3324
+ tst1 <- function(m) {
3325
+ stopifnot(identical(t(m) %*% (m), crossprod(m)))
3326
+ stopifnot(identical(m %*% t(m), crossprod(t(m))))
3327
+ }
3328
+ tst2 <- function(x, y=x) {
3329
+ stopifnot(identical(t(x) %*% (y),(crossprod(x,y) -> C)))
3330
+ stopifnot(identical(t(y) %*% (x),(crossprod(y,x) -> tC)))
3331
+ stopifnot(identical(tC, t(C)))
3332
+ }
3333
+
3334
+ {m1 <- array(1:2,1:2); dimnames(m1) <- list(D1="A", D2=c("a","b")); m1}
3335
+ tst1(m1)
3336
+ m2 <- m1; names(dimnames(m2)) <- c("", "d2"); tst1(m2)
3337
+ m3 <- m1; names(dimnames(m3)) <- c("", "") ; tst1(m3)
3338
+ m4 <- m1; names(dimnames(m4)) <- NULL ; tst1(m4)
3339
+
3340
+ tst2(m1,m2)
3341
+ tst2(m1,m3)
3342
+ tst2(m1,m4)
3343
+ tst2(m2,m3)
3344
+ tst2(m2,m4)
3345
+ tst2(m3,m4)
3346
+
3347
+ ## 2) Now the 'same' with 1-d arrays:
3348
+ a1 <- m1; dim(a1) <- length(a1); dimnames(a1) <- dimnames(m1)[2]; a1 # named dn
3349
+ a2 <- a1; names(dimnames(a2)) <- NULL ; a2 # unnamed dn
3350
+ a3 <- a1; dimnames(a3) <- NULL ; a3 # no dn
3351
+ stopifnot(identical(dimnames(t(a1))[2], dimnames(a1)))
3352
+ ## in version <= 2.0.1, t(.) was loosing names of dimnames()
3353
+ tst1(a1)# failed in 2.0.1 ("twice")
3354
+ tst1(a2)# failed in 2.0.1
3355
+ tst1(a3)# ok
3356
+ ## these all three failed in (2.0.1) for more than one reason:
3357
+ tst2(a1,a2)
3358
+ tst2(a1,a3)
3359
+ tst2(a2,a3)
3360
+ ## end {testing named dimnames for %*% and crossprod()}
3361
+
3362
+
3363
+ ## -- coercing as.data.frame(NULL) to a pairlist didn't work
3364
+ y<-1:10
3365
+ eval(quote(y), as.data.frame(NULL))
3366
+ ## NULL as the second argument of eval should be treated
3367
+ ## like a list or data frame
3368
+ eval(quote(y), NULL)
3369
+ ## end
3370
+
3371
+
3372
+ ## data frame with nothing to replace
3373
+ A <- matrix(1:4, 2, 2)
3374
+ A[is.na(A)] <- 0
3375
+ A <- as.data.frame(A)
3376
+ A[is.na(A)] <- 0
3377
+ ## last not accepted prior to 2.1.0
3378
+
3379
+
3380
+ ## scan on partial lines on an open connection
3381
+ cat("TITLE extra line", "235 335 535 735", "115 135 175",
3382
+ file="ex.data", sep="\n")
3383
+ cn.x <- file("ex.data", open="r")
3384
+ res <- scan(cn.x, skip=1, n=2)
3385
+ res <- c(res, scan(cn.x, n=2))
3386
+ res <- c(res, scan(cn.x, n=2))
3387
+ res <- c(res, scan(cn.x, n=2))
3388
+ close(cn.x, sep=" ")
3389
+ unlink("ex.data")
3390
+ stopifnot(identical(res, c(235, 335, 535, 735, 115, 135, 175)))
3391
+ ## dropped some first chars < 2.1.0
3392
+
3393
+
3394
+ ## PR#7686 formatC does not pick up on incorrect 'flag' inputs
3395
+ try(formatC(1, flag="s"))
3396
+ ## segfaulted in 2.0.1
3397
+
3398
+
3399
+ ## PR#7695 contrasts needed coercion to double
3400
+ c <- matrix(c(0,1,2), nrow=3)
3401
+ storage.mode(c) <- "integer"
3402
+ f <- factor(1:3)
3403
+ contrasts(f, 1) <- c
3404
+ x <- model.matrix(~f)
3405
+ stopifnot(x == c(1,1,1,0,1,2))
3406
+ ## gave machine-dependendent silly numbers in 2.0.1
3407
+
3408
+
3409
+ ## extreme (de-normalized) axis range
3410
+ x <- 2^-seq(67, 1067, length=20)
3411
+ plot(x^.9, x, type="l", log="xy") # still warning and ugly labels because
3412
+ ## e.g., 10^-323 |==> 9.881313e-324 numerically
3413
+ ## gave error "log - axis(), 'at' creation, _LARGE_ range..." in 2.0.1
3414
+
3415
+
3416
+ ## torture test of scan() with allowEscape=TRUE
3417
+ tf <- tempfile()
3418
+ x <- c('ABC', '"123"', "a'b")
3419
+ cat(shQuote(x, "cmd"), sep="\n", file=tf)
3420
+ (x2 <- scan(tf, ""))
3421
+ unlink(tf)
3422
+ stopifnot(identical(x, x2))
3423
+ ## At one point pre-2.1.0 got confused
3424
+
3425
+
3426
+ ## se.contrast failed in 2.0.1 with some effectively one-stratum designs.
3427
+ old <- getOption("contrasts")
3428
+ options(contrasts = c("contr.helmert", "contr.poly"))
3429
+ Lab <- factor(rep(c("1","2","3"), each=12))
3430
+ Material <- factor(rep(c("A","B","C","D"),each=3,times=3))
3431
+ Measurement <- c(12.20,12.28,12.16,15.51,15.02,15.29,18.14,18.08,18.21,
3432
+ 18.54,18.36,18.45,12.59,12.30,12.67,14.98,15.46,15.22,
3433
+ 18.54,18.31,18.60,19.21,18.77,18.69,12.72,12.78,12.66,
3434
+ 15.33,15.19,15.24,18.00,18.15,17.93,18.88,18.12,18.03)
3435
+ testdata <- data.frame(Lab, Material, Measurement)
3436
+ (test.aov <- aov(Measurement ~ Material + Error(Lab/Material),
3437
+ data = testdata))
3438
+ eff.aovlist(test.aov)
3439
+ (res <- se.contrast(test.aov,
3440
+ list(Material=="A", Material=="B",
3441
+ Material=="C", Material=="D"),
3442
+ coef = c(1, 1, -1, -1), data = testdata))
3443
+ ## failed in 2.0.1 as a matrix was 1 x 1.
3444
+
3445
+ ## 2.0.1 also failed to check for orthogonal contrasts
3446
+ ## in calculating the efficiencies (which are 1 here).
3447
+ options(contrasts = c("contr.treatment", "contr.poly"))
3448
+ (test2.aov <- aov(Measurement ~ Material + Error(Lab/Material),
3449
+ data = testdata))
3450
+ (res2 <- se.contrast(test2.aov,
3451
+ list(Material=="A", Material=="B",
3452
+ Material=="C", Material=="D"),
3453
+ coef = c(1, 1, -1, -1), data = testdata))
3454
+ stopifnot(all.equal(res, res2))
3455
+
3456
+ ## related checks on eff.aovlist
3457
+ # from example(eff.aovlist) # helmert contrasts
3458
+ Block <- gl(8, 4)
3459
+ A<-factor(c(0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1))
3460
+ B<-factor(c(0,0,1,1,0,0,1,1,0,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1))
3461
+ C<-factor(c(0,1,1,0,1,0,0,1,0,0,1,1,0,0,1,1,0,1,0,1,1,0,1,0,0,0,1,1,1,1,0,0))
3462
+ Yield <- c(101, 373, 398, 291, 312, 106, 265, 450, 106, 306, 324, 449,
3463
+ 272, 89, 407, 338, 87, 324, 279, 471, 323, 128, 423, 334,
3464
+ 131, 103, 445, 437, 324, 361, 302, 272)
3465
+ aovdat <- data.frame(Block, A, B, C, Yield)
3466
+ old <- getOption("contrasts")
3467
+ options(contrasts=c("contr.helmert", "contr.poly"))
3468
+ fit <- aov(Yield ~ A * B * C + Error(Block), data = aovdat)
3469
+ eff1 <- eff.aovlist(fit)
3470
+ options(contrasts = old)
3471
+ fit <- aov(Yield ~ A * B * C + Error(Block), data = aovdat)
3472
+ eff2 <- eff.aovlist(fit)
3473
+ stopifnot(all.equal(eff1, eff2)) # will have rounding-error differences
3474
+ ## Were different in earlier versions
3475
+
3476
+
3477
+ ## parts of PR#7742 and other examples
3478
+ sub('^','v_', 1:3, perl=TRUE)
3479
+ ## 2.0.1 did not coerce to character (nor was it documented to).
3480
+ x <- LETTERS[1:3]
3481
+ stopifnot(identical(paste('v_', x, sep=""),
3482
+ sub('^','v_', x, perl = TRUE)))
3483
+ ## 2.0.1 added random chars at the end
3484
+ stopifnot(identical(paste('v_', x, sep=""), sub('^','v_', x)))
3485
+ ## 2.0.1 did not substitute at all
3486
+ (x <- gsub("\\b", "|", "The quick brown fox", perl = TRUE))
3487
+ stopifnot(identical(x, "|The| |quick| |brown| |fox|"))
3488
+ ## checked against sed: 2.0.1 infinite-looped.
3489
+ ## NB, the help page warns you not to do this one except in perl
3490
+ (x <- gsub("\\b", "|", "The quick brown fox", perl = TRUE))
3491
+ stopifnot(identical(x, "|The| |quick| |brown| |fox|"))
3492
+ ## 2.0.1 gave wrong answer
3493
+ ## Another boundary case, same warning
3494
+ ## (x <- gsub("\\b", "|", " The quick "))
3495
+ ## stopifnot(identical(x, " |The| |quick| "))
3496
+ (x <- gsub("\\b", "|", " The quick ", perl = TRUE))
3497
+ stopifnot(identical(x, " |The| |quick| "))
3498
+ ## and some from a comment in the GNU sed code
3499
+ x <- gsub("a*", "x", "baaaac")
3500
+ stopifnot(identical(x, "xbxcx"))
3501
+ x <- gsub("a*", "x", "baaaac", perl = TRUE)
3502
+ stopifnot(identical(x, "xbxcx"))
3503
+ ## earlier versions got "bxc" or "xbxxcx"
3504
+ (x <- gsub("^12", "x", "1212")) # was "xx"
3505
+ stopifnot(identical(x, "x12"))
3506
+ (x <- gsub("^12", "x", "1212", perl = TRUE)) # was "xx"
3507
+ stopifnot(identical(x, "x12"))
3508
+ ## various fixes in 2.1.0
3509
+
3510
+ ## length(0) "dist":
3511
+ (d01. <- dist(matrix(0., 0,1)))
3512
+ ## failed in 2.0.1 and earlier
3513
+
3514
+
3515
+ ## Wish of PR#7775
3516
+ x <- matrix(0, nrow=0, ncol=2)
3517
+ colSums(x); rowSums(x)
3518
+ x <- matrix(0, nrow=2, ncol=0)
3519
+ colSums(x); rowSums(x)
3520
+ ## not allowed in 2.0.1
3521
+
3522
+
3523
+ ## infinite recursion in 2.0.1 (and R-beta 2005-04-11):
3524
+ summary(data.frame(mat = I(matrix(1:8, 2))))
3525
+ summary(data.frame(x = gl(2,2), I(matrix(1:8, 4))))
3526
+ ##
3527
+
3528
+
3529
+
3530
+ ### fixes for 2.1.1 ###
3531
+
3532
+ ## PR#7792: predict.glm dropped names
3533
+ nm <- names(predict(glm(y ~ x, family=binomial,
3534
+ data=data.frame(y=c(1, 0, 1, 0), x=c(1, 1, 0, 0))),
3535
+ newdata=data.frame(x=c(0, 0.5, 1)), type="response"))
3536
+ stopifnot(identical(nm, as.character(1:3)))
3537
+ ## no names in 2.1.0
3538
+
3539
+
3540
+ ## PR#7808: as.data.frame: Error in "names<-.default"
3541
+ x1 <- array(1:9, c(3, 3, 3))
3542
+ FUN <- function(x1, x2, x3, x4) cbind(x1[, 1, 1:2], x1[, 2, 1:2])[, 1]
3543
+ as.data.frame(FUN(x1[1:3,,], x2 = c("a", "b"),
3544
+ x3 = c("a", "b"), x4 = c("a", "b")))
3545
+ ## failed in 2.1.0
3546
+
3547
+
3548
+ ## PR#7797 citation() chops "Roeland "
3549
+ stopifnot(as.personList("Roeland Lastname")[[1]]$given[1] == "Roeland")
3550
+ ## was empty in 2.1.0.
3551
+
3552
+
3553
+ ## runmed()'s Turlach algorithm seg.faulted in rare cases:
3554
+ t2 <- c(-2,-7,5,2,-3, 0,1,3,2,-1,2,1,2,1,1,1,-2,4, 1,1,1, 32)
3555
+ rS <- runmed(t2, k=21, algorithm= "Stuetzle")
3556
+ rT <- runmed(t2, k=21, algorithm= "Turlach")
3557
+ stopifnot(identical(rS, rT))
3558
+ ## seg.fault in 2.1.0
3559
+
3560
+
3561
+ ## duplicated and unique on a list
3562
+ x <- list(1, 2, 3, 2)
3563
+ duplicated(x)
3564
+ unique(x)
3565
+ ## unique failed in 2.1.0
3566
+
3567
+
3568
+ ## prog.aovlist on data with row.names
3569
+ N <- c(0,1,0,1,1,1,0,0,0,1,1,0,1,1,0,0,1,0,1,0,1,1,0,0)
3570
+ P <- c(1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,1,1,0,0,1,0,1,1,0)
3571
+ K <- c(1,0,0,1,0,1,1,0,0,1,0,1,0,1,1,0,0,0,1,1,1,0,1,0)
3572
+ yield <- c(49.5,62.8,46.8,57.0,59.8,58.5,55.5,56.0,62.8,55.8,69.5,
3573
+ 55.0, 62.0,48.8,45.5,44.2,52.0,51.5,49.8,48.8,57.2,59.0,53.2,56.0)
3574
+ npk <- data.frame(block=gl(6,4), N=factor(N), P=factor(P),
3575
+ K=factor(K), yield=yield)
3576
+ row.names(npk) <- letters[2:25]
3577
+ npk.aovE <- aov(yield ~ N*P*K + Error(block), npk)
3578
+ pr <- proj(npk.aovE)
3579
+ ## failed in 2.1.0
3580
+
3581
+
3582
+ ## PR#7894: Reversing axis in a log plot
3583
+ x <- 1:3
3584
+ plot(x, exp(x), log = "y", ylim = c(30,1))
3585
+ ## gave error (and warning) in log - axis(), 'at' creation
3586
+
3587
+ ### end of tests added in 2.1.0 patched ###
3588
+
3589
+
3590
+
3591
+ ## Multibyte character set regular expressions had buffer overrun
3592
+ regexpr("[a-z]", NA)
3593
+ ## crashed on 2.1.1 on Windows in MBCS build.
3594
+
3595
+
3596
+ ## PR#8033: density with 'Inf' in x:
3597
+ d <- density(1/0:2, kern = "rect", bw=1, from=0, to=1, n=2)
3598
+ stopifnot(all.equal(rep(1/sqrt(27), 2), d$y, tol=1e-14))
3599
+ ## failed in R 2.1.1 (since about 1.9.0)
3600
+
3601
+ stopifnot(all.equal(Arg(-1), pi))
3602
+ ## failed in R <= 2.1.1
3603
+
3604
+
3605
+ ## PR#7973: reversed log-scaled axis
3606
+ plot(1:100, log="y", ylim=c(100,10))
3607
+ stopifnot(axTicks(2) == 10*c(10,5,2,1))
3608
+ ## empty < 2.2.0
3609
+
3610
+
3611
+ ## rounding errors in window.default (reported by Stefano Iacus)
3612
+ x <- ts(rnorm(50001), start=0, deltat=0.1)
3613
+ length(window(x, deltat=0.4))
3614
+ length(window(x, deltat=1))
3615
+ length(window(x, deltat=4.9))
3616
+ length(window(x, deltat=5))
3617
+ ## last failed in 2.1.1
3618
+
3619
+
3620
+ ## incorrect sort in order with na.last != NA
3621
+ x <- c("5","6",NA,"4",NA)
3622
+ y <- x[order(x,na.last=FALSE)]
3623
+ stopifnot(identical(y, c(NA, NA, "4", "5", "6")))
3624
+ ## 2.1.1 sorted "4" first: the fence was wrong.
3625
+
3626
+
3627
+ ## integer overflow in cor.test (PR#8087)
3628
+ n <- 46341
3629
+ (z <- cor.test(runif(n), runif(n), method = "spearman"))
3630
+ stopifnot(!is.na(z$p.value))
3631
+ ##
3632
+
3633
+ ## seek on a file messed up in Windows (PR#7896)
3634
+ tf <- tempfile()
3635
+ f <- file(tf, "w+b")
3636
+ writeChar("abcdefghijklmnopqrstuvwxyz", f, eos=NULL)
3637
+ seek(f, 0, "end", rw="r")
3638
+ stopifnot(seek(f, NA, rw="r") == 26) # MinGW messed up seek to end of file that was open for writing
3639
+ close(f)
3640
+ f <- file(tf, "rb")
3641
+ seek(f, 12)
3642
+ stopifnot(readChar(f, 1) == "m") # First patch messed up on read-only files
3643
+ close(f)
3644
+ unlink(tf)
3645
+ ##
3646
+
3647
+ ### end of tests added in 2.1.1 patched ###
3648
+
3649
+
3650
+
3651
+ ## tests of hexadecimal constants
3652
+ x <- 0xAbc
3653
+ stopifnot(x == 2748)
3654
+ xx <- as.integer("0xAbc")
3655
+ stopifnot(x == xx)
3656
+ xx <- as.numeric("0xAbc")
3657
+ stopifnot(x == xx)
3658
+ stopifnot(as.integer("13.7") == 13)
3659
+ ## new in 2.2.0
3660
+
3661
+
3662
+ ## save() of raw vector was incorrect on big-endian system
3663
+ (y <- x <- charToRaw("12345"))
3664
+ save(x, file="x.Rda")
3665
+ rm(x)
3666
+ load("x.Rda")
3667
+ x
3668
+ stopifnot(identical(x, y))
3669
+ unlink("x.Rda")
3670
+ ## 00 00 00 00 00 in 2.1.0 on OS X (now macOS)
3671
+ ## fixed for 2.1.1, but test added only in 2.2.x
3672
+
3673
+
3674
+ ## PR#7922: Could not use expression() as an initial expression value
3675
+ setClass("test2", representation(bar = "expression"))
3676
+ new("test2", bar = expression())
3677
+ ## failed
3678
+
3679
+
3680
+ ## Ops.data.frame had the default check.names=TRUE
3681
+ DF <- data.frame("100"=1:2, "200"=3:4, check.names=FALSE)
3682
+ DF/DF
3683
+ stopifnot(identical(names(DF), names(DF/DF)))
3684
+ ## DF/DF names had X prepended < 2.2.0
3685
+
3686
+
3687
+ ## sum(T) was double
3688
+ x <- 1:10
3689
+ stopifnot(typeof(sum(x)) == "integer")
3690
+ x <- c(TRUE, FALSE)
3691
+ stopifnot(typeof(sum(x)) == "integer")
3692
+ ## double < 2.2.0
3693
+
3694
+
3695
+ ## Overflow in PrintGenericVector
3696
+ x <- paste(1:5000, collapse="+")
3697
+ as.matrix(list(a=1:2, b=2:3, c=x))
3698
+ ## segfault in 2.1.1, silent truncation in 2.1.1 patched
3699
+
3700
+
3701
+ ## weighted.residuals for glm fits (PR#7961)
3702
+ set.seed(1)
3703
+ x <- runif(10)
3704
+ y <- x + rnorm(10)
3705
+ w <- 0:9
3706
+ r1 <- weighted.residuals(lm(y ~ x, weights = w))
3707
+ r2 <- weighted.residuals(glm(y ~ x, weights = w))
3708
+ stopifnot(all.equal(r1, r2))
3709
+ ## different in 2.1.1
3710
+
3711
+
3712
+ ## errors in add1.{lm,glm} when adding vars with missing values(PR#8049)
3713
+ set.seed(2)
3714
+ y <- rnorm(10)
3715
+ x <- 1:10
3716
+ is.na(x[9]) <- TRUE
3717
+
3718
+ lm0 <- lm(y ~ 1)
3719
+ lm1 <- lm(y ~ 1, weights = rep(1, 10))
3720
+
3721
+ add1(lm0, scope = ~ x)
3722
+ add1(lm1, scope = ~ x) ## error in 2.1.1
3723
+
3724
+ glm0 <- glm(y ~ 1)
3725
+ glm1 <- glm(y ~ 1, weights = rep(1, 10))
3726
+ glm2 <- glm(y ~ 1, offset = rep(0, 10))
3727
+
3728
+ add1(glm0, scope = ~ x) ## error in 2.1.1
3729
+ add1(glm1, scope = ~ x) ## error in 2.1.1
3730
+ add1(glm2, scope = ~ x) ## error in 2.1.1
3731
+ ##
3732
+
3733
+
3734
+ ## levels<-.factor dropped other attributes.
3735
+ ## Heinz Tuechler, R-help, 2005-07-18
3736
+ f1 <- factor(c("level c", "level b", "level a", "level c"), ordered=TRUE)
3737
+ attr(f1, "testattribute") <- "teststring"
3738
+ (old <- attributes(f1))
3739
+ levels(f1) <- c("L-A", "L-B", "L-C")
3740
+ f1
3741
+ (new <- attributes(f1))
3742
+ new$levels <- old$levels <- NULL
3743
+ stopifnot(identical(old, new))
3744
+ f2 <- factor(letters[1:4])
3745
+ levels(f2) <- as.character(c(1:3, NA))
3746
+ f2
3747
+ stopifnot(nlevels(f2) == 3)
3748
+ ## dropped other attributes < 2.2.0.
3749
+
3750
+
3751
+ ## regressed at one point in pre-2.2.0
3752
+ A <- matrix(pi, 0, 2)
3753
+ stopifnot(identical(dim(A), dim(format(A))))
3754
+ ## dropped dim at one point
3755
+
3756
+
3757
+ ## ls.diag with missing values (PR#8139)
3758
+ x <- matrix(c(1,-1,1,-1,1,-1,1,-1,1,-1, 1,2,3,4,5,6,7,8,9,10), 10, 2)
3759
+ y <- as.matrix(c(1,2,3,NA,3,4,3,4,5,4))
3760
+ wt <- c(1,1,1,1,1,1,1,1,1,0)
3761
+ regres <- lsfit(x, y, wt=wt)
3762
+ regdiag <- ls.diag(regres)
3763
+ ## failed < 2.2.0.
3764
+
3765
+
3766
+ ## window.default had an inappropriate tolerance
3767
+ a <- ts(1:5000, start = 0, freq = 10)
3768
+ b <- lag(a, 1)
3769
+ bb <- window(b, start = 0)
3770
+ stopifnot(length(bb) == length(a) - 1)
3771
+ ## was length(a) - 2 in 2.1.1, since the tolerance was abs(start) * ts.end
3772
+
3773
+
3774
+ ## subassignment of length zero vector to NULL gave garbage answer (PR#8157)
3775
+ x <- NULL
3776
+ x[[1]] <- numeric(0)
3777
+ stopifnot(length(x[[1]]) == 0)
3778
+ ## failed < 2.2.0
3779
+
3780
+
3781
+ ## some checks for raw in data frames and lists
3782
+ x <- charToRaw("test")
3783
+ (z <- data.frame(x))
3784
+ z$y <- x
3785
+ z[["y2"]] <- x
3786
+ z["y3"] <- x
3787
+ z
3788
+ ## lists use separate code
3789
+ z <- list(x=x)
3790
+ z$y <- x
3791
+ z[["y2"]] <- x
3792
+ z["y3"] <- list(x)
3793
+ z
3794
+ ## Not completely supported prior to 2.2.0
3795
+
3796
+
3797
+ ### end of tests added in 2.2.0 ###
3798
+
3799
+
3800
+ ## summary.matrix failed on some classed objects
3801
+ surv <- structure(c(2.06, 2.13, 0.09, 0.27, 1, 0.36, 3.04, 0.67, 0.35,
3802
+ 0.24, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0),
3803
+ dim = c(10L, 2L),
3804
+ dimnames = list(NULL, c("time", "status")),
3805
+ type = "right", class = "Surv")
3806
+ summary(surv)
3807
+ ## Had infinite recursion (sometimes segfault) on 2.2.0.
3808
+
3809
+ ## need fuzz even for ">=" :
3810
+ set.seed(1)
3811
+ stopifnot(all.equal(chisq.test(cbind(1:0, c(7,16)), simulate.p = TRUE)$p.value,
3812
+ 0.3368315842, tol = 1e-6))
3813
+ ## some i686 platforms gave 0.00049975
3814
+
3815
+
3816
+ ## PR#8228 image() failed on a matrix with all NAs
3817
+ image(z=matrix(NA, 1, 1), x=0:1, y=0:1)
3818
+
3819
+
3820
+ ## read.fwf(header=TRUE) failed (PR#8226)
3821
+ ff <- tempfile()
3822
+ cat(file=ff, "A\tB\tC", "123456", "987654", sep="\n")
3823
+ z <- read.fwf(ff, width=c(1,2,3), header=TRUE)
3824
+ stopifnot(identical(names(z), LETTERS[1:3]))
3825
+ unlink(ff)
3826
+ ## failed in <= 2.2.0
3827
+
3828
+ ## diag() failed if matrix had NA dimnames
3829
+ x <- matrix(1, 2, 2)
3830
+ dimnames(x) <- list(c("a", NA), c("a", NA))
3831
+ diag(x)
3832
+
3833
+
3834
+ ## colnames in pivoted decompositions (PR#8258)
3835
+ A <- 1:10
3836
+ X <- cbind(A,B=A^2, C=A^2-A, D=1)
3837
+ qrX <- qr(X)
3838
+ oo <- order(qrX$pivot)
3839
+ Q <- qr.Q(qrX)
3840
+ R <- qr.R(qrX)
3841
+ (z <- (Q%*%R)[,oo])
3842
+ stopifnot(identical(colnames(X), colnames(z)))
3843
+
3844
+ qrX <- qr(X, LAPACK=TRUE)
3845
+ oo <- order(qrX$pivot)
3846
+ Q <- qr.Q(qrX)
3847
+ R <- qr.R(qrX)
3848
+ (z <- (Q%*%R)[,oo])
3849
+ stopifnot(identical(colnames(X), colnames(z)))
3850
+
3851
+ Y <- crossprod(X)
3852
+ U <- chol(Y, pivot=TRUE)
3853
+ oo <- order(attr(U, "pivot"))
3854
+ (z <- t(U[,oo])%*% U[,oo])
3855
+ stopifnot(identical(colnames(X), colnames(z)))
3856
+ ## unpivoted colnames in R <= 2.2.0
3857
+
3858
+
3859
+ ## Im(-1) (PR#8272)
3860
+ stopifnot(all.equal(Im(c(1, 0, -1)), rep(0, 3)))
3861
+ ## R <= 2.2.0 had Im and Arg the same for non-complex numbers
3862
+
3863
+
3864
+ ## rounding errors in aggregate.ts
3865
+ aggregate(as.ts(c(1,2,3,4,5,6,7,8,9,10)),1/5,mean)
3866
+ ## failed in 2.2.0
3867
+
3868
+
3869
+ ## prcomp(tol=1e-6)
3870
+ set.seed(16)
3871
+ x <- matrix(runif(30),ncol=10)
3872
+ s <- prcomp(x, tol=1e-6)
3873
+ stopifnot(length(s$sdev) == 3, ncol(s$rotation) == 2)
3874
+ summary(s)
3875
+ ## last failed in 2.2.0
3876
+
3877
+
3878
+ ## mapply did not test type of MoreArgs
3879
+ try(mapply(rep,times=1:4, MoreArgs=42))
3880
+ ## segfaulted in 2.2.0
3881
+
3882
+
3883
+ ## qbinom had incorrect test for p with log=TRUE
3884
+ (z <- qbinom(-Inf, 1, 0.5, log.p = TRUE))
3885
+ stopifnot(is.finite(z))
3886
+ ## was NaN in 2.2.0
3887
+
3888
+
3889
+ ## t(.) with NULL dimnames
3890
+ x <- diag(2)
3891
+ dimnames(x) <- list(NULL, NULL)
3892
+ stopifnot(identical(x, t(x)),
3893
+ identical(dimnames(x), dimnames(t(array(3, 1, dimnames=list(NULL))))))## dropped the length-2 list till 2.2.0
3894
+
3895
+
3896
+ ## infinite influence measures (PR#8367)
3897
+ data(occupationalStatus)
3898
+ Diag <- as.factor(diag(1:8))
3899
+ Rscore <- scale(as.numeric(row(occupationalStatus)), scale = FALSE)
3900
+ Cscore <- scale(as.numeric(col(occupationalStatus)), scale = FALSE)
3901
+ Uniform <- glm(Freq ~ origin + destination + Diag + Rscore:Cscore,
3902
+ family = poisson, data = occupationalStatus)
3903
+ Ind <- as.logical(diag(8))
3904
+ residuals(Uniform)[Ind] #zero/near-zero
3905
+ stopifnot(is.nan(rstandard(Uniform)[Ind]),
3906
+ is.nan(rstudent (Uniform)[Ind]),
3907
+ is.nan(dffits (Uniform)[Ind]),
3908
+ is.nan(covratio (Uniform)[Ind]),
3909
+ is.nan(cooks.distance(Uniform)[Ind]))
3910
+ ## had infinities in 2.2.0 on some platforms
3911
+ ## plot.lm() on <glm> objects:
3912
+ plot(Uniform) # last plot gives warning on h_ii ~= 1
3913
+ plot(Uniform, 6) # added 2006-01-10
3914
+ plot(Uniform, 5:6)# failed for a few days 2008-05
3915
+ plot(Uniform, 1:2, caption = "")# ditto
3916
+ ##
3917
+
3918
+
3919
+ ### end of tests added in 2.2.1 ###
3920
+
3921
+ ## sub(fixed=TRUE), reported by Roger Peng 2005-12-21
3922
+ x <- 0:10
3923
+ v <- paste(x, "asdf", sep=".")
3924
+ (xx <- sub(".asdf", "", v, fixed = TRUE))
3925
+ stopifnot(nchar(xx) == nchar(x), xx == x)
3926
+ ## had random trailing bytes from second element on in 2.2.1.
3927
+ ## identical reported true, fixed in 2.3.0.
3928
+
3929
+
3930
+ ## rbind on data frames with 0 rows (PR#8506)
3931
+ foo <- data.frame(x = 1:10, y = rnorm(10))
3932
+ bar1 <- rbind.data.frame(foo[1:5,], foo[numeric(0),])
3933
+ stopifnot(dim(bar1) == c(5,2))
3934
+ bar2 <- rbind.data.frame(a = foo[1:5,], b = foo[numeric(0),])
3935
+ stopifnot(dim(bar2) == c(5,2))
3936
+ ## Last had 6 rows in 2.2.1, and was a corrupt data frame
3937
+
3938
+ ## environments are recursive but cannot be indexed - all.equal.default()
3939
+ d <- data.frame(k=1:7, n=2:8, x=0:6)
3940
+ r <- glm(cbind(k, n-k) ~ x, family=binomial, data=d)
3941
+ stopifnot(all.equal(r,r))
3942
+ ## failed in 2.2.1
3943
+
3944
+ ### end of tests added in 2.2.1 patched ###
3945
+
3946
+
3947
+ ## sort used to preserve inappropriate attributes and not always sort names.
3948
+ x <- runif(10)
3949
+ tsp(x) <- c(1,10,1)
3950
+ (z <- sort(x)) # kept tsp attribute
3951
+ stopifnot(is.null(attributes(z)))
3952
+ (z <- sort(x, method="quick")) # same
3953
+ stopifnot(is.null(attributes(z)))
3954
+ (z <- sort(x, partial = 1:10)) # same
3955
+ stopifnot(is.null(attributes(z)))
3956
+
3957
+ names(x) <- letters[1:10]
3958
+ o <- sort.list(x)
3959
+ z2 <- structure(c(x)[o], names=names(x)[o])
3960
+ (z <- sort(x)) # sorted names, dropped the tsp attribute
3961
+ stopifnot(identical(z, z2))
3962
+ (z <- sort(x, method="quick")) # sorted names, kept the tsp attribute.
3963
+ stopifnot(identical(z, z2))
3964
+ (z <- sort(x, partial = 1:10)) # did not sort names, kept tsp attribute
3965
+ stopifnot(is.null(attributes(z)))
3966
+ ## fixed for 2.3.0 to sort names (except partial), drop all other attributes.
3967
+
3968
+
3969
+ ## formatC on as.single (PR#8211)
3970
+ # not documented to work but someone tried it.
3971
+ (z <- formatC(as.single(1)))
3972
+ stopifnot(identical(z, "1"))
3973
+ ## was wrong < 2.3.0
3974
+
3975
+
3976
+ ## outer on factors was broken in pre-2.3.0
3977
+ x <- factor(1:3)
3978
+ outer(x, x, "!=")
3979
+ ## failed 2005-10-17
3980
+
3981
+
3982
+ ## add tests for < 0 shape in [dpqr]gamma
3983
+ dgamma(1, -2)
3984
+ pgamma(1, -2)
3985
+ qgamma(0.95, -2)
3986
+ rgamma(3, -20)
3987
+ ## all errors < 2.1.1, now NaNs
3988
+
3989
+
3990
+ ## Make sure reference to local environment is serialized
3991
+ f <- function() { function(){} }
3992
+ serialize(f(), NULL)
3993
+ ##
3994
+
3995
+
3996
+ ## dummy_vfprintf with overlong format
3997
+ xx <- paste(rep("a", 10000), collapse="+")
3998
+ con <- gzfile("test.gz", "w")
3999
+ writeLines(xx, con)
4000
+ close(con)
4001
+ unlink("test.gz")
4002
+ ## segfaulted in 2.2.0 on some x86_64 systems.
4003
+
4004
+
4005
+ ## format() with *.marks:
4006
+ x <- 1.2345 + 10^(0:5)
4007
+ ff <- format(x, width = 11, big.mark = "'")
4008
+ stopifnot(nchar(ff) == 12)
4009
+ ## small marks test
4010
+ f2 <- format(x, big.mark = "'", small.mark="_", small.interval = 2)
4011
+ nc <- nchar(f2)
4012
+ stopifnot(substring(f2, nc,nc) != "_", # no traling small mark
4013
+ nc == nc[1])# all the same
4014
+ fc <- formatC(1.234 + 10^(0:8), format="fg", width=11, big.mark = "'")
4015
+ stopifnot(nchar(fc) == 11)
4016
+ ## had non-adjusted strings before 2.3.0
4017
+
4018
+
4019
+ ## data.matrix on zero-length columns
4020
+ DF <- data.frame(x=c("a", "b"), y=2:3)[FALSE,]
4021
+ stopifnot(is.numeric(data.matrix(DF)))
4022
+ # was logical in 2.2.1.
4023
+ DF <- data.frame(a=I(character(0)))
4024
+ X <- data.matrix(DF)
4025
+ stopifnot(is.numeric(X))
4026
+ ## gave logical matrix in 2.2.1.
4027
+
4028
+ stopifnot(pbirthday(950, coincident=250) == 0,
4029
+ pbirthday(950, coincident=200) > 0)
4030
+ ## gave error before 2.3.0
4031
+
4032
+
4033
+ ## raw matrices (PR#8529/30)
4034
+ v <- as.raw(c(1:6))
4035
+ dim(v) <- c(2,3)
4036
+ dimnames(v) <- list(c("x","y"), c("P", "Q", "R"))
4037
+ v
4038
+ s <- as.raw(c(11:16))
4039
+ dim(s) <- c(2,3)
4040
+ s
4041
+ rbind(s,v,v)
4042
+ (m <- cbind(s,v,v,s))
4043
+ m[2,4] <- as.raw(254)
4044
+ m
4045
+ m[1:2,2:4] <- s
4046
+ m
4047
+ ## unimplemented before 2.3.0
4048
+
4049
+
4050
+ ## window with non-overlapping ranges (PR#8545)
4051
+ test <- ts(1:144, start=c(1,1), frequency=12)
4052
+ window(test, start=c(15,1), end=c(17,1), extend=TRUE)
4053
+ ## failed < 2.3.0
4054
+
4055
+
4056
+ ## pbinom(size=0) gave NaN (PR#8560)
4057
+ x <- c(-1,0,1,2)
4058
+ stopifnot(identical(pbinom(x, size = 0, p = 0.5), c(0,1,1,1)))
4059
+ ## 2.2.1 gave NaN in all cases (forced explicitly in C code).
4060
+
4061
+
4062
+ ## Limits on [dpqr]nbinom and [dqpr]geom
4063
+ stopifnot(is.nan(dnbinom(0, 1, 0)), dnbinom(0, 1, 1) == 1,
4064
+ pnbinom(c(-1, 0, 1), 1, 1) == c(0, 1, 1),
4065
+ is.nan(pnbinom(0, 1, 0)),
4066
+ qnbinom(0.5, 1, 1) == 0,
4067
+ is.nan(qnbinom(0.5, 1, 0)),
4068
+ is.finite(rnbinom(1, 1, 1)),
4069
+ !is.finite(rnbinom(1, 1, 0)))
4070
+ ## d allowed p=0, [pq] disallowed p=1 for R < 2.3.0, r gave NaN for p=1.
4071
+ stopifnot(is.nan(dgeom(0, 0)), dgeom(0, 1) == 1,
4072
+ pgeom(c(-1, 0, 1), 1) == c(0, 1, 1), is.nan(pgeom(0, 0)),
4073
+ qgeom(0.5, 1) == 0, is.nan(qgeom(0.5, 0)),
4074
+ is.finite(rgeom(1, 1)),
4075
+ !is.finite(rgeom(1, 0)))
4076
+
4077
+
4078
+ ## A response to PR#8528 incorrectly claimed these to be wrong.
4079
+ stopifnot(all.equal(df(0, 2, 2), 1))
4080
+ stopifnot(is.infinite(df(0, 1.3, 2)))
4081
+ x <- 1e-170
4082
+ stopifnot(all.equal(pbeta(x,x,x), 0.5))
4083
+ ## just a regression check.
4084
+ ## This underflowed
4085
+ stopifnot(all.equal(dbeta(x,x,x), 0.5))
4086
+ ## this was slow
4087
+ stopifnot(system.time(qnbinom(1e-10, 1e3, 1e-7))[3] < 0.1)
4088
+ ## but this failed
4089
+ qnbinom(0.5, 10000000000, 0.000000002)
4090
+ ## infinite-looped in 2.2.1 (answer is approx 4e18)
4091
+ qpois(0.9, 1e50)
4092
+ ## infinite-looped in 2.2.1
4093
+ z <- 10^seq(10, 300, 10)
4094
+ stopifnot(all.equal(pt(-z, 1, log=TRUE), pcauchy(-z, 1, log=TRUE)))
4095
+ ## failed at about 1e150 in 2.2.1
4096
+ stopifnot(pt(-1e200, 0.001) > 0)
4097
+ ## was 0 in 2.2.1, should be about 31%
4098
+
4099
+
4100
+ ## all.equal.numeric overflowed for large integers
4101
+ set.seed(1); r1 <- .Random.seed
4102
+ set.seed(2); r2 <- .Random.seed
4103
+ stopifnot(is.character(all.equal(r1, r2)))
4104
+ ## all.equal() gave NA in 2.2.1
4105
+
4106
+
4107
+ ## support for raw indices in for() was added in 2.3.0
4108
+ xx <- as.raw(40:48)
4109
+ for(i in xx) print(i)
4110
+ ## was error < 2.3.0
4111
+
4112
+
4113
+ ## as.list on a symbol, for S-compatibility
4114
+ as.list(as.name("data.frame"))
4115
+ ## was error in 2.2.1
4116
+
4117
+
4118
+ ## min ignored INT_MAX, (PR#8731)
4119
+ stopifnot(min(.Machine$integer.max) == .Machine$integer.max)
4120
+ stopifnot(max(-.Machine$integer.max) == -.Machine$integer.max)
4121
+ op <- options(warn=2)
4122
+ min(Inf)
4123
+ max(-Inf)
4124
+ options(op)
4125
+ ## were +/-Inf with warning in 2.2.1.
4126
+
4127
+
4128
+ ## PR#8718: invalid usage in R >= 2.7.0
4129
+ #a <- matrix(2,2,2)
4130
+ #apply(a,1,"$","a")
4131
+ #apply(a,1,sum)
4132
+ ## first apply was corrupting apply() code in 2.2.1
4133
+
4134
+
4135
+ ## NULL results in apply()
4136
+ apply(as.matrix(1), 1, function(x) NULL)
4137
+ ## was error in 2.2.1.
4138
+
4139
+
4140
+ ## sum on data frames (PR#8385)
4141
+ DF <- data.frame(m1=1:2, m2=3:4)
4142
+ sum(DF)
4143
+ sum(DF=DF) # needed arg named x
4144
+ sum(DF, DF) # failed
4145
+ DF[1, 1] <- NA
4146
+ stopifnot(is.na(sum(DF)), sum(DF, na.rm=TRUE) == 9)
4147
+ ## failures < 2.4.0
4148
+
4149
+ ## plot.lm
4150
+ # which=4 failed in R 1.0.1
4151
+ par(mfrow=c(1,1), oma= rep(0,4))
4152
+ summary(lm.fm2 <- lm(Employed ~ . - Population - GNP.deflator, data = longley))
4153
+ for(wh in 1:6) plot(lm.fm2, which = wh)
4154
+
4155
+ op <- par(mfrow = c(2,2), mar = .1+c(3,3,2,1), mgp = c(1.5, .6, 0))
4156
+ y <- rt(200, df= 3)
4157
+ plot(lm(y ~ 1))
4158
+ par(op)
4159
+ ## 4th plot (which = 5: "leverages") failed in 2.2.0 <= R <= 2.3.0
4160
+
4161
+
4162
+ ## Re-fix PR#8506
4163
+ z <- rbind(x = data.frame(a = 1, b = 2), y = data.frame(a = 1, b = 2))
4164
+ stopifnot(row.names(z) == c("x", "y"))
4165
+ ## were NAs (and failed to print) in 2.3.0
4166
+
4167
+ dd <- data.frame(x = 3:4)
4168
+ stopifnot(identical(rownames(dd), row.names(dd)),
4169
+ identical(rownames(dd), c("1", "2")))
4170
+ ## one was integer in an intermediate version of "pre 2.4.0"
4171
+
4172
+
4173
+ ## mean on integer vector ignored NAs
4174
+ stopifnot(is.na(mean(NA)))
4175
+ ## failed in R 2.3.0
4176
+
4177
+
4178
+ ## title etc failed if passed col etc of length > 1
4179
+ plot(1:2)
4180
+ title("foo", col=1:3)
4181
+ title("foo", cex=1:3)
4182
+ title("foo", lty=1:3)
4183
+ title("foo", lwd=1:3)
4184
+ title("foo", bg=4:7)
4185
+ ## threw errors in R <= 2.3.0
4186
+
4187
+
4188
+ ## glm did not allow array offsets
4189
+ df1 <- data.frame(u=1:10,
4190
+ v=rpois(10,10),
4191
+ z=array(1,10, dimnames=list(1:10)))
4192
+ glm(v ~ u+offset(log(z)), data=df1, family=poisson)
4193
+ ## was error in R <= 2.3.0
4194
+
4195
+
4196
+ ## invalid values of a logical vector from bindingIsLocked
4197
+ ## Martin Morgan, R-devel, 2006-05-14
4198
+ e <- new.env()
4199
+ e$x <- 1
4200
+ e$y <- 2
4201
+ lockBinding("x", e)
4202
+ stopifnot(bindingIsLocked("x", e), bindingIsLocked("x", e)==TRUE,
4203
+ !bindingIsLocked("y", e), bindingIsLocked("y", e)==FALSE)
4204
+ ## on some systems in R <= 2.3.0, bindingIsLocked("x", e)==TRUE was false
4205
+
4206
+
4207
+ ## ccf on non-aligned time series
4208
+ x <- ts(rnorm(100), start=1)
4209
+ y <- ts(rnorm(120), start=3)
4210
+ ccf(x, y)
4211
+ ## needed na.action=na.contiguous in 2.3.0
4212
+
4213
+
4214
+ ## merge.data.frame was not making column names unique when
4215
+ ## doing a Cartesian product.
4216
+ DF <- data.frame(col=1:3)
4217
+ DF2 <- merge(DF, DF, by=numeric(0))
4218
+ stopifnot(identical(names(DF2), c("col.x", "col.y")))
4219
+ ## both were 'col' in 2.3.0.
4220
+
4221
+
4222
+ ## [pq]unif were not consistent on infinite ranges.
4223
+ stopifnot(is.na(qunif(.5, 0, Inf)))
4224
+ ## was Inf in 2.3.1.
4225
+ stopifnot(is.na(punif(1, 0, Inf)))
4226
+ ## was 0 in 2.3.1
4227
+ ## and failed on zero ranges despite the documentation.
4228
+ stopifnot(punif(c(0, 1, 2), 1, 1) == c(0, 1, 1))
4229
+ stopifnot(qunif(c(0, 0.5, 1), 1, 1) == 1)
4230
+ ## were all NaN on 2.3.1
4231
+
4232
+
4233
+ ## cbind segfaulted if coercion of the result to list failed.
4234
+ cbind(as.name("foo"), 1:3)
4235
+ # segfaulted in 2.3.1
4236
+ (x <- cbind(y ~ x, 1))
4237
+ x[,1]
4238
+ ## last is 3 x 2 list matrix
4239
+
4240
+
4241
+ ## empty point set
4242
+ r <- xy.coords(numeric(0))
4243
+ ## gave an error with misleading message in 2.3.1
4244
+
4245
+
4246
+ ## [<- could extend a ts but not change tsp.
4247
+ xx <- x <- ts(rnorm(6), frequency=7)
4248
+ try(x[8] <- NA)
4249
+ stopifnot(identical(x, xx))
4250
+ ## Allowed in R < 2.4.0, but corrupted tsp.
4251
+
4252
+
4253
+ ## This only "works" by having an S3 generic use the registry
4254
+ ## of another S3 generic, which seems a very bad idea.
4255
+ ## ## Looking up generic in UseMethod
4256
+ ## mycoef <- function(object, ....) UseMethod("coef")
4257
+ ## x <- list(coefficients=1:3)
4258
+ ## mycoef(x)
4259
+ ## ## failed to find default method < 2.4.0
4260
+
4261
+
4262
+ ## regression tests on changes to model.frame and model.matrix
4263
+ A <- data.frame(y = 1:10, z = 1:10+1i,
4264
+ x = rep(c("a", "b"), each = 5),
4265
+ r = as.raw(1:10),
4266
+ stringsAsFactors = FALSE)
4267
+ model.frame(z ~ x+y+r, data = A) # includes character, raw and complex
4268
+ lm(z ~ x+y, data = A) # complex response, character RHS
4269
+ # but we do not allow complex nor raw variables on the rhs
4270
+ stopifnot(inherits(try(model.matrix(y ~ x+z, data = A)), "try-error"))
4271
+ stopifnot(inherits(try(model.matrix(y ~ r, data = A)), "try-error"))
4272
+ ## new in 2.4.0
4273
+
4274
+
4275
+ ## tests of stringsAsFactors
4276
+ a <- letters[1:8]
4277
+ aa <- matrix(a, 4, 2)
4278
+ aaa <- list(aaa=letters[20:23])
4279
+ colnames(aa) <- paste("aa", 1:2, sep=".")
4280
+ (A <- data.frame(a=a[1:4], aa, aaa, stringsAsFactors = FALSE))
4281
+ stopifnot(all(sapply(A, class) == "character"))
4282
+ stopifnot(class(as.data.frame(list(a=a), stringsAsFactors = TRUE)$a)
4283
+ == "factor")
4284
+ ## new in 2.4.0
4285
+
4286
+
4287
+ ## failure to duplicate in environment<-().
4288
+ ## Thomas Petzoldt, R-help, 2006-06-23.
4289
+ envfun <- function(L) {
4290
+ p <- parent.frame()
4291
+ assign("test", L$test, p)
4292
+ environment(p$test) <- p
4293
+ }
4294
+ solver <- function(L) envfun(L)
4295
+ L <- list(test = function() 1 + 2)
4296
+
4297
+ environment(L$test)
4298
+ solver(L)
4299
+ (e <- environment(L$test))
4300
+ stopifnot(identical(e, .GlobalEnv))
4301
+ ## failed to look at NAMED
4302
+
4303
+
4304
+ ## sort.list(<a factor>, method="radix") stopped working at some point
4305
+ x <- factor(sample(letters, 1000, replace=TRUE))
4306
+ o <- sort.list(x, method = "radix")
4307
+ ## failed in 2.3.1
4308
+
4309
+
4310
+ ## qt() bisection search: PR#9050
4311
+ x <- -2:2
4312
+ stopifnot(isTRUE(all.equal(x, qt(pt(x, df=20, ncp=1),df=20,ncp=1))))
4313
+ ## failed in 2.3.1
4314
+
4315
+
4316
+ ## poly() didn't pass 'raw' to polym()
4317
+ x <- -3:3
4318
+ y <- 10*(1:7)
4319
+ stopifnot(identical(poly (x,y, degree = 2, raw = TRUE),
4320
+ polym(x,y, degree = 2, raw = TRUE)))
4321
+ ## failed in 2.3.1
4322
+
4323
+
4324
+ ## plot.xy( type = "s" | "S" ) was missing an initial test: PR#9046
4325
+ types <- c("p", "l", "b", "o", "h", "s", "S")
4326
+ p <- palette(hcl(h = seq(30,330, length= length(types))))
4327
+ plot(c(1,6), c(-.4, 1.5), type="n", ann = FALSE); off <- 1:6 / 16
4328
+ for(i in seq(types)) {
4329
+ lines(i*off /-1:4, type = types[i], col = i, pch = types[i])
4330
+ mtext(types[i], 4, line= .5, at = i*off[6]/4, col = i, las = 1)
4331
+ }
4332
+ palette(p)# restored to previous
4333
+ ## failed in 2.3.1
4334
+
4335
+
4336
+ ## qf for large df2
4337
+ stopifnot(isTRUE(all.equal(qf(0.9,df1=1,df2=1e10,ncp=0),
4338
+ qf(0.9,df1=1,df2=1e10))))
4339
+ ## failed in 2.3.1
4340
+
4341
+
4342
+ ## some regression tests of as.vector() and as.list()
4343
+ x <- list(a=1, b=2)
4344
+ stopifnot(identical(x, as.list(x))) # was said to drop names
4345
+ x <- pairlist(a=1, b=2)
4346
+ stopifnot(is.list(x))
4347
+ xx <- as.vector(x, "list")
4348
+ stopifnot(typeof(xx) == "list")
4349
+ stopifnot(!identical(x, xx))
4350
+ stopifnot(identical(names(x), names(xx)))
4351
+
4352
+ x <- expression(a=2+3, b=pi)
4353
+ xx <- as.vector(x, "list") # not allowed in 2.3.1
4354
+ stopifnot(identical(names(x), names(xx)))
4355
+ xx <- as.list(x) # lost names in 2.3.1
4356
+ stopifnot(identical(names(x), names(xx)))
4357
+ ## was incorrectly documented in 2.3.1
4358
+
4359
+
4360
+ ## subsetting arrays preserved attributes, although it did not for matrices
4361
+ x <- structure(1:8, names=letters[1:8], comm="a comment", dim = c(2L,2L,2L))
4362
+ stopifnot(is.null(attr(x[,,], "comm")))
4363
+ x <- structure(1:8, names=letters[1:8], comm="a comment", dim = c(2L,4L))
4364
+ stopifnot(is.null(attr(x[,], "comm")))
4365
+ x <- structure(1:8, names=letters[1:8], comm="a comment")
4366
+ stopifnot(!is.null(attr(x[], "comm"))) # this does preserve
4367
+ stopifnot(is.null(attr(x[1:8], "comm")))
4368
+ ## 2.3.1 preserved the first.
4369
+
4370
+
4371
+ ## diff() for POSIX(cl)t :
4372
+ ds1 <- diff(lsec <- .leap.seconds[1:12])
4373
+ (ds2 <- diff(llsec <- as.POSIXlt(lsec))) # in days
4374
+ stopifnot(ds1 == ds2)
4375
+ ## gave different result for POSIXlt up to 2.3.1
4376
+
4377
+
4378
+ ## format(trim = TRUE, big.mark=",") did not work correctly (PR#9118)
4379
+ (a <- format(c(-1,1,10,999,1e6), trim=TRUE))
4380
+ (b <- format(c(-1,1,10,999,1e6), big.mark=",", trim=TRUE))
4381
+ stopifnot(a[1:4] == b[1:4])
4382
+ ## no trim in 2.3.1 if big.mark was used.
4383
+
4384
+
4385
+ ## residuals.glm needed 'y = TRUE' (PR#9124)
4386
+ # example for poisson GLM from ?glm
4387
+ d.AD <- data.frame(treatment = gl(3,3), outcome = gl(3,1,9),
4388
+ counts = c(18,17,15,20,10,20,25,13,12))
4389
+ glm.D93 <- glm(counts ~ outcome + treatment, family = poisson,
4390
+ data = d.AD, y = FALSE)
4391
+ residuals(glm.D93, type = "working")
4392
+ residuals(glm.D93, type = "partial")
4393
+ residuals(glm.D93, type = "response")
4394
+ residuals(glm.D93, type = "deviance")
4395
+ residuals(glm.D93, type = "pearson")
4396
+ ## all failed in 2.3.1
4397
+
4398
+
4399
+ ## anova.mlm failed
4400
+ dat<-matrix( c(9,7,8,8,12,11,8,13, 6,5,6,3,6,7,10,9,
4401
+ 10,13,8,13,12,14,14,16, 9,11,13,14,16,12,15,14),
4402
+ ncol = 4, dimnames = list(s=1:8, c=1:4))
4403
+ mlmfit <- lm(dat ~ 1)
4404
+ anova(mlmfit, X = ~1)
4405
+ ## worked in 2.2.1, failed in 2.3.1
4406
+
4407
+
4408
+ ## stopifnot(<expr>) for a long expression (do not wrap the following line!!):
4409
+ r <- try(stopifnot(c("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O")),
4410
+ silent = TRUE)
4411
+ if(length(grep("TRUE.*TRUE",r)))
4412
+ stop("stopifnot() gives bad message for long expression")
4413
+ ## happened in 2.3.[01]
4414
+
4415
+
4416
+ ## rownames on 0-extent matrix (PR#9136)
4417
+ A <- matrix(NA, 0, 0)
4418
+ stopifnot(identical(rownames(A, do.NULL = FALSE), character(0)))
4419
+ stopifnot(identical(colnames(A, do.NULL = FALSE), character(0)))
4420
+ ## were 'row' etc in 2.3.1.
4421
+
4422
+
4423
+ ## grep(value = TRUE) sometimes preserved names, sometimes not
4424
+ x <- 1:3
4425
+ xx <- letters[1:3]
4426
+ names(x) <- names(xx) <- xx
4427
+ z <- grep(1, x, value = TRUE)
4428
+ stopifnot(!is.null(names(z)), names(z) == xx[1])
4429
+ z <- grep(1, x, value = TRUE, perl = TRUE)
4430
+ stopifnot(!is.null(names(z)), names(z) == xx[1])
4431
+ z <- grep("a", xx, value = TRUE)
4432
+ stopifnot(!is.null(names(z)), names(z) == xx[1])
4433
+ z <- grep("a", xx, value = TRUE, perl = TRUE)
4434
+ stopifnot(!is.null(names(z)), names(z) == xx[1])
4435
+ z <- agrep("a", xx, value = TRUE)
4436
+ stopifnot(!is.null(names(z)), names(z) == xx[1:3])
4437
+ ## perl=TRUE, agrep did not in 2.3.1, all did not for pre-2.4.0
4438
+ x[2] <- xx[2] <- NA
4439
+ z <- grep(NA, x, value = TRUE)
4440
+ stopifnot(identical(names(z), names(xx)))
4441
+ z <- grep(NA, x, value = TRUE, perl = TRUE)
4442
+ stopifnot(identical(names(z), names(xx)))
4443
+ z <- grep(NA, xx, value = TRUE)
4444
+ stopifnot(identical(names(z), names(xx)))
4445
+ z <- grep(NA, xx, value = TRUE, perl = TRUE)
4446
+ stopifnot(identical(names(z), names(xx)))
4447
+ z <- agrep(NA, xx, value = TRUE)
4448
+ stopifnot(identical(names(z), names(xx)))
4449
+ ## always dropped names on NA matches < 2.4.0
4450
+
4451
+
4452
+ oo <- options(max.print = 20)
4453
+ cc <- capture.output(women)
4454
+ options(oo)
4455
+ c2 <- capture.output(women[1:10,])
4456
+ stopifnot(length(cc) == 1 + 20/2 + 1,
4457
+ identical(cc[-12], c2[1:11]))
4458
+ ## was wrong for some days in Aug.2006
4459
+
4460
+
4461
+ ## errors in identical()
4462
+ stopifnot(!identical(pairlist(a=1, b=2), pairlist(a=1, aa=2)))
4463
+ stopifnot(!identical(structure(pi, a=1, b=2), structure(pi, a=1, aa=2)))
4464
+ stopifnot(identical(structure(pi, a=1, b=2), structure(pi, b=2, a=1)))
4465
+ ## ignored names of pairlists, but tested order of attributes < 2.4.0
4466
+
4467
+
4468
+ ## failed subassign could leave '*tmp*' around
4469
+ ## Parlamis Franklin, R-devel, 2006-09-20
4470
+ test <- 1:10
4471
+ try(test[2:4] <- ls) # fails
4472
+ stopifnot(!exists("*tmp*", where=1))
4473
+ ## was true < 2.4.0
4474
+
4475
+
4476
+ ## merge on zero-row data frames
4477
+ L3 <- LETTERS[1:3]
4478
+ d <- data.frame(cbind(x=1, y=1), fac=sample(L3, 1, repl=TRUE))
4479
+ e <- d[-1,]
4480
+ merge(d, e, by.x = "x", by.y = "x", all.x = TRUE)
4481
+ ## not allowed <= 2.4.0
4482
+
4483
+
4484
+ ## PR#9313
4485
+ library(stats4)
4486
+ g <- function(x, y) -cos(x) + abs(y)
4487
+ fit1 <- mle(g, start = list(x = 0, y = 7))
4488
+ fit2 <- mle(g, start = list(y = 7, x = 0))
4489
+ stopifnot(all.equal(coef(fit1), coef(fit2)))
4490
+ ## Found different solutions in 2.4.0, as names were not remapped in fit2
4491
+
4492
+
4493
+ ## PR#9446
4494
+ rbind( data.frame(x=1), list(x=2) )
4495
+ ## was error in 2.4.0 as list gave double row names.
4496
+
4497
+
4498
+ ## extreme case
4499
+ bs <- boxplot.stats(c(1,Inf,Inf,Inf))
4500
+ ## gave an error in 2.4.0
4501
+
4502
+
4503
+ ## t.test with one group of size one
4504
+ x <- c(23,25,29,27,30,30)
4505
+ t.test(x=x[1], y=x[-1], var.equal=TRUE)
4506
+ t.test(y=x[1], x=x[-1], var.equal=TRUE)
4507
+ ## failed in 2.4.0
4508
+
4509
+
4510
+ ## corrupted "ts" objects
4511
+ structure(1:3, class="ts")
4512
+ ## failed in print method < 2.4.1
4513
+
4514
+
4515
+ ## PR#9399
4516
+ x1 <- "x2"
4517
+ x2 <- pi
4518
+ rm(x1) # removes x1, not x2
4519
+ stopifnot(!exists("x1", .GlobalEnv), exists("x2", .GlobalEnv))
4520
+ rm("x2")
4521
+ # incorrectly documented <= 2.4.0
4522
+ a <- b <- c <- 1
4523
+ z <- try(rm(c("a", "b")))
4524
+ stopifnot(inherits(z, "try-error"))
4525
+ ## removed 'a', 'b' and 'c' in 2.4.0
4526
+
4527
+ ### end of tests added in 2.4.1 ###
4528
+
4529
+
4530
+ ## translation error in optimize (PR#9438)
4531
+ ex2 <- function(x) log((18/41) * x - 2 * x^2) +
4532
+ 16 * log(4 * x^2 - (36/41) * x + (9/41)) +
4533
+ 24 * log((23/82) + (18/41) * x - 2 * x^2)
4534
+ opt <- optimise(ex2, lower = 0, upper = 9/41, maximum = TRUE)$maximum
4535
+ # there are two global maxima
4536
+ stopifnot(abs(opt - 0.187) < 0.01 || abs(opt - 0.033) < 0.01)
4537
+ ## changed both ends of interval at the first step, gave opt = 0.136
4538
+
4539
+
4540
+ ## Needlessly failing subassignments
4541
+ e <- 1:10
4542
+ e[2] <- expression(e)
4543
+ e <- pi
4544
+ e[2] <- expression(e)
4545
+ e <- letters
4546
+ e[2] <- expression(e)
4547
+ e <- as.raw(1:3)
4548
+ e[2] <- list(e=pi)
4549
+ ## all failed < 2.5.0
4550
+
4551
+
4552
+ ## uniroot did not allow zero at the end of an interval
4553
+ f <- function(x) x-1
4554
+ uniroot(f, c(0,2))
4555
+ uniroot(f, c(0,1))
4556
+ uniroot(f, c(1,2))
4557
+ ## last two failed in 2.4.x
4558
+
4559
+
4560
+ ## PR#9360 and PR#9394
4561
+ acf(1, lag.max=0, plot=FALSE)
4562
+ ## gave an error in 2.4.0
4563
+ stopifnot( all.equal(ccf(1:3,-(1:3))$acf[2,1,1], -1) )
4564
+ ## gave positive lag 0 cross-correlation after patching PR#9360
4565
+
4566
+
4567
+ ## regression tests for complex sum/prod (briefly broken in Jan 2007)
4568
+ z <- rnorm(10) + rnorm(10)*(0+1i)
4569
+ sum(z)
4570
+ (x <- sum(pi, z))
4571
+ stopifnot(all.equal(x, sum(pi,Re(z)) + sum(Im(z))*(0+1i)))
4572
+ prod(z)
4573
+ ##
4574
+
4575
+
4576
+ ## problems with 0-row data frames created by read.table
4577
+ x <- structure(list(one = NULL, two = NULL, three = NULL),
4578
+ names = c("one", "two", "three"), class = "data.frame")
4579
+ y <- data.frame(one=1,two=2,three=3)
4580
+ (z <- rbind(x,y))
4581
+ stopifnot(dim(z) == c(1, 3))
4582
+ (z <- rbind(y,x))
4583
+ stopifnot(dim(z) == c(1, 3))
4584
+ (z <- rbind(x,x))
4585
+ stopifnot(dim(z) == c(0, 3))
4586
+ ## variously failed or gave zero-column data frame in 2.4.1
4587
+
4588
+
4589
+ ## tests of partial matching of attributes
4590
+ x <- 1:4
4591
+ attr(x, "ab") <- 1
4592
+ for(y in c("abc", "abcd", "abcde")) {
4593
+ attr(x, y) <- 1
4594
+ stopifnot(is.null(attr(x, "a")))
4595
+ }
4596
+ # second was '1' on 2.4.1.
4597
+ x <- 1:4
4598
+ names(x) <- letters[x]
4599
+ stopifnot(identical(attr(x, "n"), names(x)))
4600
+ x <- as.pairlist(x)
4601
+ stopifnot(identical(attr(x, "n"), names(x)))
4602
+ ## worked for pairlists but not vectors in 2.4.1
4603
+
4604
+
4605
+ ## which(arr.ind = TRUE) failed to give matrix on a 0-length input
4606
+ C <- matrix(1:16, 4)
4607
+ (ind <- which(C < 0, arr.ind = TRUE))
4608
+ stopifnot(is.matrix(ind))
4609
+ ## gave integer(0) in 2.4.1
4610
+
4611
+
4612
+ ## plnorm wrong for out-of-range values (PR#9520)
4613
+ stopifnot(plnorm(0, lower.tail=FALSE) == 1, plnorm(0, lower.tail=TRUE) == 0)
4614
+ ## both lower tail in R < 2.5.0
4615
+
4616
+
4617
+ ## supsmu with all NA values (PR#9519)
4618
+ x <- seq(0, 1, len = 100)
4619
+ y <- x + NA
4620
+ try(supsmu(x,y))
4621
+ ## segfaulted < 2.5.0
4622
+
4623
+
4624
+ ## which.max when max is Inf (PR#9522)
4625
+ which.min(c(NA, NA, Inf))
4626
+ which.max(c(NA, NA, -Inf, -Inf))
4627
+ ## were integer(0) in < 2.5.0
4628
+
4629
+
4630
+ ## str.dendrogram did not work with 'max.level=NA'
4631
+ ## which has become default when called from str.default():
4632
+ cm <- cor(USJudgeRatings)
4633
+ hm <- heatmap(cm, symm = TRUE, keep.dendro = TRUE)
4634
+ str(hm, max=2) # reasonable
4635
+ str(hm) # gave error (less reasonable than above)
4636
+
4637
+
4638
+ ## [<-.data.frame did not allow deleting the last column (PR#9565)
4639
+ DF <- data.frame(x = 1:3, y = 4:6, z = 7:9)
4640
+ DF[, "z"] <- NULL
4641
+ stopifnot(identical(dim(DF), c(3L, 2L)))
4642
+ ## 'subscript out of bounds' in 2.4.1.
4643
+
4644
+ ## new tryCatch() based try() with anonymous function
4645
+ v <- try(do.call(function(x) stop("died"), list(1)), silent=TRUE)
4646
+ stopifnot(inherits(v, "try-error"))
4647
+ ## failed in some version of R-devel (2.5.0)
4648
+
4649
+
4650
+ ## choose(n,k) should be integer if n is
4651
+ stopifnot(choose(11,6) == 462)
4652
+ ## was < 462 on some AMD64 Linux
4653
+
4654
+
4655
+ ## fix up use of %j" format in strptime (PR#9577)
4656
+ x <- strptime(31:33, "%j")
4657
+ x
4658
+ stopifnot(!is.na(x))
4659
+ ## day 32 was NA in R < 2.5.0
4660
+
4661
+
4662
+ ## mosaicplot() broken by undocumented 'bug fix' r39655
4663
+ x <- matrix(1:4,2,2)
4664
+ mosaicplot(x, sort = seq_len(dim(x)))
4665
+ ## failed in 2.4.1, fixed in 2.5.0
4666
+
4667
+
4668
+ ## jitter failed in wierd case (PR#9580)
4669
+ stopifnot(is.finite( jitter(c(-1, 3)) ))
4670
+ ## was repeated NaN in 2.4.1
4671
+
4672
+
4673
+ ## max.col() problems (PR#9542)
4674
+ x <- rep(0, 10)
4675
+ dim(x) <- c(1, 10)
4676
+ # max.col(x) should be random.
4677
+ ans <- numeric(100)
4678
+ for(i in 1:100) ans[i] <- max.col(x)
4679
+ table(ans)
4680
+ stopifnot(any(ans != 10))
4681
+ ## always gave last in 2.4.1
4682
+
4683
+
4684
+ ## rep could segfault: Hiroyuki Kawakatsu, R-help, 2007-03-30
4685
+ try(rep(each = 0, length.out = 1))
4686
+ # segfaulted in 2.4.1
4687
+
4688
+
4689
+ ## readBin could read beyond the end of a raw vector.
4690
+ # Henrik Bengtsson, Rdevel, 2007-04-07
4691
+ bfr <- as.raw(1:12)
4692
+ (x <- readBin(con=bfr, what="raw", n=20))
4693
+ stopifnot(length(x) == 12)
4694
+ (x <- readBin(con=bfr, what="integer", n=20))
4695
+ stopifnot(length(x) == 3)
4696
+ (x <- readBin(con=bfr, what="integer", size=4, n=20))
4697
+ stopifnot(length(x) == 3)
4698
+ (x <- readBin(con=bfr, what="integer", size=2, n=20))
4699
+ stopifnot(length(x) == 6)
4700
+ (x <- readBin(con=bfr, what="integer", size=1, n=20))
4701
+ stopifnot(length(x) == 12)
4702
+ ## read too far where size-changing was involved in 2.4.x
4703
+
4704
+
4705
+ ## density() could give negative values by rounding error (PR#8876)
4706
+ x <- c(0.006, 0.002, 0.024, 0.02, 0.034, 0.09, 0.074, 0.072, 0.122,
4707
+ 0.048, 0.044, 0.168)
4708
+ result <- density(x, n = 20, from = -1, to = 1)
4709
+ stopifnot(result$y >= 0)
4710
+ ## slightly negative < 2.5.0
4711
+
4712
+
4713
+ ## bw.SJ() used too small search interval in rare cases:
4714
+ bw.SJ(1:20) # error: "no solution in the specified range of bandwidths" in < 2.5.1
4715
+ ## this is not ok when called as density(1:20, bw = "SJ")
4716
+ ## [that's a matter of opinion, since the example is ridiculous.]
4717
+
4718
+
4719
+ ## hexadecimal integer constants failed on some platforms (PR#9648)
4720
+ stopifnot(identical(0x10L, 16L))
4721
+ ## first was 0L on Windows in 2.5.0
4722
+
4723
+
4724
+ ## rbind failed if the only data frame had 0 rows (PR#9657)
4725
+ A <- data.frame(foo=character(0), bar=character(0))
4726
+ rbind(A, c(foo="a", bar="b"))
4727
+ ## failed in 2.5.0
4728
+
4729
+
4730
+ ## factor() with NA in dimnames():
4731
+ x <- matrix(1:2, 2)
4732
+ rownames(x) <- factor(c("A", NA))
4733
+ ## segfaulted <= 2.5.0
4734
+
4735
+
4736
+ ## return value of median.
4737
+ z <- median(integer(0))
4738
+ stopifnot(identical(z, NA_integer_))
4739
+ z <- median(numeric(0))
4740
+ stopifnot(identical(z, NA_real_))
4741
+ ## returned logical NA in 2.5.0
4742
+
4743
+
4744
+ ## seq.int on small reversed 'by'
4745
+ stopifnot(inherits(try(seq.int(1.2, 1, by=1)), "try-error"))
4746
+ ## was '1.2' in 2.5.0
4747
+
4748
+
4749
+ ## subassignment on pairlists: Uwe Ligges on R-help, 2007-05-29
4750
+ Call <- call("round", 10.5)
4751
+ try({Call[] <- NULL; Call})
4752
+ ## seqgfaulted in 2.5.0
4753
+
4754
+
4755
+ ## Bessel bugs for nu < 0:
4756
+ x <- seq(0., 3, length = 101)
4757
+ nu <- -0.4
4758
+ stopifnot(all.equal(besselI(x,nu, TRUE),
4759
+ exp(-x)*besselI(x,nu, FALSE), tol = 1e-13))
4760
+ ## wrong in 2.5.0
4761
+ stopifnot(all.equal(besselY(seq(0.5, 3, 0.5), nu),
4762
+ c(0.309568577942, 0.568866844337, 0.626095631907,
4763
+ 0.544013906248, 0.366321150943, 0.141533189246),
4764
+ tol = 1e-11))
4765
+ ## wrong numbers in 2.5.0
4766
+
4767
+ ### end of tests added in 2.5.1 ###
4768
+
4769
+
4770
+ ## regression tests for unlink and wildcards
4771
+ owd <- setwd(tempdir())
4772
+ f <- c("ftest1", "ftest2", "ftestmore", "ftest&more")
4773
+ file.create(f)
4774
+ stopifnot(file.exists(f))
4775
+ unlink("ftest?")
4776
+ stopifnot(file.exists(f) == c(FALSE, FALSE, TRUE, TRUE))
4777
+ unlink("ftest*", recursive = TRUE)
4778
+ stopifnot(!file.exists(f))
4779
+
4780
+ stopifnot(unlink("no_such_file") == 0) # not an error
4781
+
4782
+ dd <- c("dir1", "dir2", "dirs", "moredirs")
4783
+ for(d in dd) dir.create(d)
4784
+ dir(".")
4785
+ file.create(file.path(dd, "somefile"))
4786
+ dir(".", recursive=TRUE)
4787
+ stopifnot(unlink("dir?") == 1) # not an error
4788
+ unlink("dir?", recursive = TRUE)
4789
+ stopifnot(file.exists(dd) == c(FALSE, FALSE, FALSE, TRUE))
4790
+ unlink("*dir*", recursive = TRUE)
4791
+ stopifnot(!file.exists(dd))
4792
+
4793
+ # Windows needs short path names for leading spaces
4794
+ dir.create(" test")
4795
+ dir(".", recursive=TRUE)
4796
+ unlink(" test", recursive = TRUE)
4797
+ stopifnot(!file.exists(" test"))
4798
+ setwd(owd)
4799
+ ## wildcards were broken in 2.5.0 on Unix, and always on Windows
4800
+
4801
+
4802
+ ## duplicated columns in a data frame
4803
+ x <- matrix(seq(1:12),ncol=3)
4804
+ colnames(x) <- c("A","B","A") #a redundant name for column 2
4805
+ x.df <- as.data.frame(x)
4806
+ stopifnot(x.df[4,3] == x[4,3])
4807
+ ## wrong column in 2.5.0
4808
+
4809
+
4810
+ ## it really is unclear if this should work as the fit is to a
4811
+ ## numeric variable with levels, and the prediction does not have
4812
+ ## levels. But some people expected it to.
4813
+ worms <- data.frame(sex=gl(2,6), Dose=factor(rep(2^(0:5),2)),
4814
+ deaths=c(1,4,9,13,18,20,0,2,6,10,12,16))
4815
+ worms$doselin <- unclass(worms$Dose)
4816
+ worms.glm <- glm(cbind(deaths, (20-deaths)) ~ sex+ doselin,
4817
+ data=worms, family=binomial)
4818
+ predict(worms.glm, new=data.frame(sex="1", doselin=6))
4819
+ ## failed < 2.6.0
4820
+
4821
+
4822
+ ## regression test for changes in aggregate.data.frame
4823
+ z <- aggregate(state.x77,
4824
+ list(Region = state.region,
4825
+ Cold = state.x77[,"Frost"] > 130),
4826
+ mean)
4827
+ stopifnot(sapply(z, class)[1:2] == c("factor", "logical"),
4828
+ identical(levels(z[[1]]), levels(state.region)) )
4829
+ f1 <- c("a","b","a","b")
4830
+ f2 <- factor(f1, levels=c("b","c","a"), ordered=TRUE)
4831
+ z <- aggregate(1:4, list(groups=f1), sum)
4832
+ stopifnot(sapply(z, class) == c("character", "integer"))
4833
+ z <- aggregate(1:4, list(groups=f2), sum)
4834
+ stopifnot(identical(sapply(z, class), list(groups=class(f2), x="integer")),
4835
+ identical(levels(z[[1]]), levels(f2)),
4836
+ is.ordered(z[[1]]) )
4837
+ ## converted to factors < 2.6.0
4838
+
4839
+
4840
+ ## formals<- on function with NULL body (PR#9758)
4841
+ f <- function() NULL
4842
+ g <- alist(a=, b=4, c=)
4843
+ formals(f) <- g
4844
+ # identical(formals(f), g) is false as g has names attribute
4845
+ stopifnot(is.null(body(f)), identical(names(formals(f)), names(g)))
4846
+ ## was function(a, b=4) before 2.6.0
4847
+
4848
+
4849
+ ## subsetting R.version
4850
+ stopifnot(identical("simple.list", class(R.version[1:7])))
4851
+
4852
+
4853
+ ## <data frame>[[<character>, j]]
4854
+ swiss[["Broye", "Agriculture"]]
4855
+ swiss[[7, "Agriculture"]]
4856
+ swiss[["Broye", 2]]
4857
+ swiss[[7, 2]]
4858
+ ## first and third failed < 2.6.0
4859
+
4860
+
4861
+ ## load of raw vector from ASCII save
4862
+ s1 <- "this is a test string 123"
4863
+ r0 <- r1 <- charToRaw(s1)
4864
+ save(r1, file="r1-ascii.rda", ascii=TRUE)
4865
+ save(r1, file="r1.rda", ascii=FALSE)
4866
+ rm(r1)# really prove...
4867
+ load("r1.rda")
4868
+ unlink("r1.rda")
4869
+ stopifnot(identical(r1, r0))
4870
+ # was OK, but add regression test
4871
+ load("r1-ascii.rda")
4872
+ unlink("r1-ascii.rda")
4873
+ stopifnot(identical(r1, r0))
4874
+ ## wrong < 2.5.1 patched
4875
+
4876
+
4877
+ ## match.arg with multiple values (PR#9859)
4878
+ x <- letters[1:3]
4879
+ y <- c('aa','bb')
4880
+ try(match.arg(x,y)) # gave spurious warning
4881
+ res <- match.arg(x,y, several.ok = TRUE) # error
4882
+ stopifnot(identical(res, y))
4883
+ ## failed in 2.5.1
4884
+
4885
+
4886
+ ## sweep() must work with 0-extent matrix/STATS :
4887
+ m <- matrix(1:5, 5,0)
4888
+ stopifnot(identical(m, sweep(m, 2, apply(m,2, min))))
4889
+ ## failed in R-devel around 2007-08-31
4890
+
4891
+
4892
+ ## julian with POSIXlt origin (PR#9908)
4893
+ julian(as.POSIXlt("1999-2-1"), origin=as.POSIXlt("1999-1-1"))
4894
+ ## failed < 2.6.0
4895
+
4896
+ ### continued in reg-tests-1b.R ###
4897
+
4898
+ proc.time()