Codebase list gtools / f0b6969
Import Upstream version 3.5.0 Dirk Eddelbuettel 5 years ago
27 changed file(s) with 1729 addition(s) and 1216 deletion(s). Raw diff Collapse all Expand all
0 2015-05-27 warnes
1
2 * [r2039] R/mixedsort.R, man/mixedsort.Rd: Add roman numeral
3 support to mixedorder() and mixedsort().
4 * [r2037] man/asc.Rd: Add asc() and chr() functions for converting
5 between characters and ASCII codes
6 * [r2036] R/roman2int.R: roman2int() now returns NA for invalid
7 roman numeral strings instead of generating an error.
8 * [r2035] NAMESPACE: Add asc(), chr(), assignEdgewise(),
9 unByteCode(), and
10 unByteCodeAssign() to package NAMESPACE.
11 * [r2034] R/asc.R: Add asc() and chr() functions for converting
12 between characters and ASCII codes
13
14 2015-05-26 warnes
15
16 * [r2030] inst/ChangeLog: Add changelog to svn repository
17
18 2015-05-25 warnes
19
20 * [r2029] tests/test_ddirichlet.R: Add library call.
21 * [r2028] man/unByteCode.Rd: Fix typo and add documentation for
22 argument 'name'.
23 * [r2027] man/mixedsort.Rd: Fix typo.
24 * [r2026] man/mixedsort.Rd: Add description of blanklast argument,
25 fix typo.
26 * [r2025] man/quantcut.Rd: Change usage to match actual definition.
27 * [r2024] man/mixedsort.Rd: Note characters sorting ignores case.
28 * [r2023] man/mixedsort.Rd: Remove '...' from arglist to match
29 source code.
30 * [r2022] man/mixedsort.Rd: Replace unicode quotes with \code{..}.
31
32 2015-05-23 warnes
33
34 * [r2021] tests/test_ddirichlet.R: Add regression test ddirichlet()
35 bug for x[i]=0, alpha[i]=1:
36 ddirichlet(x, alpha) was returning NA rather than 0.
37 * [r2020] R/dirichlet.R: ddirichlet() was incorrectly returning NA
38 when x[i]=0 and
39 alpha[i]=1. In this case, the one calculation became (-Inf * 0),
40 which R evaluates to NaN. The correction is to detect this case
41 and
42 substitute -Inf instead of NaN.
43
44 2015-05-08 warnes
45
46 * [r2019] R/mixedsort.R: Summary: Speed up mixedorder by moving
47 suppressWarnings outside of
48 lapply loops. (Suggestion by Henrik Bengtsson.)
49
50 2015-05-02 warnes
51
52 * [r2018] Rename 'trunk' to 'pkg' for compatibility with R-forge
53 * [r2017] Minor layout change.
54 * [r2016] Remove stray 'svn' that was inserted into the code.
55 * [r2015] Add man page for unByteCode(), assignEdgeWise(), and
56 unByteCodeAssign()
57
58 2015-04-28 warnes
59
60 * [r1976] Changes to mixedsort():
61 - Hands off objects that are not character vectors to the default
62 sort.
63 - Add 'decreasing', 'na.last', and 'blank.last' arguments.
64 * [r1975] Add private function 'checkReverseDependencies'.
65
66 2015-04-23 warnes
67
68 * [r1950] Update NEWS and ChangeLog
69 * [r1949] - The 'q' argument to quantcut()'s 'q' now accept an
70 integer
71 indicating the number of equally spaced quantile groups to
72 create. (Suggestion and patch submitted by Ryan C. Thompson.)
73 * [r1946] Revers accidental text deletion:
74 * [r1945] Update for gtools 3.4.3
75 * [r1944] Remove debugging code and stray browser() call
76
77 2015-04-14 warnes
78
79 * [r1923] Fix typo
80
081 2015-04-09 warnes
182
2 * [r1920] DESCRIPTION, NAMESPACE, R/loadedPackages.R,
3 R/na.replace.R, inst/ChangeLog, inst/NEWS, man/loadedPackages.Rd,
4 man/na.replace.Rd: Move first()/last()/left()/right() to gdata.
83 * [r1921] Update gtools ChangeLog
84 * [r1920] Move first()/last()/left()/right() to gdata.
585 Add new functions na.replace() and loadedPackages().
686 Add more text to package description.
787
888 2015-04-08 warnes
989
10 * [r1919] NAMESPACE, R/first.R, man/first.Rd, man/left.Rd: Move
11 first/last/left/right to from gtools to gdata
90 * [r1919] Move first/last/left/right to from gtools to gdata
1291
1392 2015-04-06 warnes
1493
15 * [r1918] man/dirichlet.Rd: Correct URL
16 * [r1917] inst/ChangeLog, inst/NEWS: Update NEWS and ChangeLog for
17 gtools 3.5.0
18 * [r1916] inst/ChangeLog: Add ChangeLog files to repository
19 * [r1915] R/keywords.R: Implement fix to keywords() needed for
20 R-3.4.1, as suggested by Kurt
94 * [r1918] Correct URL
95 * [r1917] Update NEWS and ChangeLog for gtools 3.5.0
96 * [r1916] Add ChangeLog files to repository
97 * [r1915] Implement fix to keywords() needed for R-3.4.1, as
98 suggested by Kurt
2199 Hornik.
22 * [r1914] NAMESPACE, R/first.R: - Export S3 methods for first(),
23 last(), left() and right().
100 * [r1914] - Export S3 methods for first(), last(), left() and
101 right().
24102 - Ensure code matches man page for first(), last(), left(), and
25103 right().
26104
27105 2014-10-09 warnes
28106
29 * [r1897] DESCRIPTION, inst/NEWS: Update for 3.5.0 release of
30 gtools
31 * [r1896] R/first.R: Make right() and left() S3 methods for classes
32 data.frame and matrix
107 * [r1897] Update for 3.5.0 release of gtools
108 * [r1896] Make right() and left() S3 methods for classes data.frame
109 and matrix
33110
34111 2014-08-27 warnes
35112
36 * [r1872] man/first.Rd: Fix man page
37 * [r1871] DESCRIPTION, NAMESPACE, R/first.R, man/first.Rd,
38 man/left.Rd: Finish adding first(), last(), left(), and right().
39 * [r1870] R/first.R: Add functions first(), last(), left(), and
40 right().
113 * [r1872] Fix man page
114 * [r1871] Finish adding first(), last(), left(), and right().
115 * [r1870] Add functions first(), last(), left(), and right().
41116
42117 2014-05-28 warnes
43118
44 * [r1816] DESCRIPTION, inst/NEWS: Update for gtools 3.4.1
45 * [r1815] tests/smartbind_Dates.R: Add test to ensure smartbind()
46 properly handles Date columns.
47 * [r1814] R/smartbind.R: smartbind: Convert non-native type columns
48 (except factor) to character.
119 * [r1816] Update for gtools 3.4.1
120 * [r1815] Add test to ensure smartbind() properly handles Date
121 columns.
122 * [r1814] smartbind: Convert non-native type columns (except
123 factor) to character.
49124
50125 2014-04-18 arnima
51126
52 * [r1813] R/ASCIIfy.R, man/ASCIIfy.Rd: Main arg is 'x' like
53 showNonASCII(x), preformatted notes instead of verb
127 * [r1813] Main arg is 'x' like showNonASCII(x), preformatted notes
128 instead of verb
54129
55130 2014-04-17 warnes
56131
57 * [r1810] man/ASCIIfy.Rd: Update ASCIIfy man page to match source
58 code and add keywords
59 * [r1809] inst/NEWS: Update NEWS for gtools 3.4.0
60 * [r1808] DESCRIPTION, NAMESPACE, R/ASCIIfy.R, man/ASCIIfy.Rd: Add
61 ASCIIfy function posted to RDevel by Arni Magnusson
132 * [r1810] Update ASCIIfy man page to match source code and add
133 keywords
134 * [r1809] Update NEWS for gtools 3.4.0
135 * [r1808] Add ASCIIfy function posted to RDevel by Arni Magnusson
62136
63137 2014-03-01 warnes
64138
65 * [r1776] tests/test_mixedorder.R: Fix cut-and-paste error.
66 * [r1775] DESCRIPTION, inst/NEWS: Update files for gtools 3.3.1
67 release
68 * [r1774] R/mixedsort.R, tests/test_mixedorder.R: Fix bug in
69 gtools::mixedorder regular expression for regognizing numbers.
70 (Periods weren't escaped).
139 * [r1776] Fix cut-and-paste error.
140 * [r1775] Update files for gtools 3.3.1 release
141 * [r1774] Fix bug in gtools::mixedorder regular expression for
142 regognizing numbers. (Periods weren't escaped).
71143
72144 2014-02-11 warnes
73145
74 * [r1773] R/clean_up_dependencies2.R: Create and use locate copy of
75 tools:::.split_op_version.
76 * [r1772] inst/NEWS: Update for gtools 3.3.0.
77 * [r1771] man/getDependencies.Rd: Fix arguments
78 * [r1770] man/getDependencies.Rd: Update arguments to match code.
79 * [r1769] DESCRIPTION, NAMESPACE, R/clean_up_dependencies2.R,
80 R/getDependencies.R, man/getDependencies.Rd: Add
81 getDependencies() function to return a list of package
82 dependencies.
146 * [r1773] Create and use locate copy of tools:::.split_op_version.
147 * [r1772] Update for gtools 3.3.0.
148 * [r1771] Fix arguments
149 * [r1770] Update arguments to match code.
150 * [r1769] Add getDependencies() function to return a list of
151 package dependencies.
83152
84153 2014-01-14 warnes
85154
86 * [r1768] DESCRIPTION, inst/NEWS: Update for bug-fix release
87 * [r1767] tests, tests/test_binsearch.R: Add test file for
88 binsearch() function.
89 * [r1766] R/binsearch.R: Fixed bug where binsearch() returned the
90 wrong endpoint & value when the found value was at the upper
91 endpoint.
155 * [r1768] Update for bug-fix release
156 * [r1767] Add test file for binsearch() function.
157 * [r1766] Fixed bug where binsearch() returned the wrong endpoint &
158 value when the found value was at the upper endpoint.
92159
93160 2014-01-13 warnes
94161
95 * [r1765] man/smartbind.Rd: Fix typo
162 * [r1765] Fix typo
96163
97164 2014-01-11 warnes
98165
99 * [r1764] inst/NEWS: Update for gtools release 3.2.0
100 * [r1763] man/gtools-defunct.Rd: fixes for R CMD check
101 * [r1762] DESCRIPTION, NAMESPACE, R/capture.R, R/defunct.R,
102 R/keywords.R, man/capture.Rd, man/gtools-defunct.Rd,
103 man/stars.pval.Rd: Fixes for gtools release 3.2.0
166 * [r1764] Update for gtools release 3.2.0
167 * [r1763] fixes for R CMD check
168 * [r1762] Fixes for gtools release 3.2.0
104169
105170 2013-12-23 warnes
106171
107 * [r1761] R/keywords.R, man/keywords.Rd: Extend the keywords()
108 function to return keywords associated with a specified topic via
109 'keywords(topic)'.
110 * [r1760] man/stars.pval.Rd: Add keyword.
111 * [r1759] NAMESPACE, R/stars.pval.R, man/stars.pval.Rd: Add
112 stars.pval() function to convert p-values into significance
113 symbols.
172 * [r1761] Extend the keywords() function to return keywords
173 associated with a specified topic via 'keywords(topic)'.
174 * [r1760] Add keyword.
175 * [r1759] Add stars.pval() function to convert p-values into
176 significance symbols.
114177
115178 2013-11-26 warnes
116179
117 * [r1748] R/mixedsort.R: mixedorder() was failing to correctly
118 handle numbers including
180 * [r1748] mixedorder() was failing to correctly handle numbers
181 including
119182 decimals due to a faulty regular expression. Prior to the fix:
120183
121184 > drr
136199
137200 2013-11-18 warnes
138201
139 * [r1747] R/capture.R: Use ".Deprecated" instead of warning.
202 * [r1747] Use ".Deprecated" instead of warning.
140203
141204 2013-11-06 warnes
142205
143 * [r1746] DESCRIPTION, inst/NEWS: Update files for gtools 3.1.1
144 * [r1745] R/mixedsort.R: Fix problem with mixedorder/mixedsort when
145 there is only zero or one elements in the vector.
206 * [r1746] Update files for gtools 3.1.1
207 * [r1745] Fix problem with mixedorder/mixedsort when there is only
208 zero or one elements in the vector.
146209
147210 2013-09-23 warnes
148211
149 * [r1716] man/gtools-deprecated.Rd: Comment out empty sections in
150 gtools-deprecated.Rd
151 * [r1715] DESCRIPTION, inst/NEWS: Update files for gtools 3.1.0
212 * [r1716] Comment out empty sections in gtools-deprecated.Rd
213 * [r1715] Update files for gtools 3.1.0 release
214 * [r1714] Make 'addLast()' defunct.
215 * [r1713] Mark 'addLast()' as defunct and move 'lastAdd()' function
216 to a separate file.
217 * [r1712] Update for gtools 3.0.1 release
218 * [r1711] Use 'suppressWarnings() instead of 'options(warn=-1)' in
219 'mixedorder()'.
220
221 2013-07-07 warnes
222
223 * [r1705] Fix typo.
224
225 2013-07-06 warnes
226
227 * [r1704] Fix Rd warning.
228 * [r1703] Include lastAdd in NAMESPACE
229 * [r1702] Change assert from deprecated to defunct.
230 * [r1701] Improve deprecation message
231 * [r1700] Update for gtools 3.0.0
232 * [r1699] Create new function lastAdd to replace addLast and mark
233 addLast as deprecated.
234
235 2013-07-05 warnes
236
237 * [r1698] Point out that addLast() modifies the value of .Last in
238 the global environment.
239 * [r1697] Point out that addLast() modifies the value of .Last in
240 the global environment.
241 * [r1696] Update for gtools 2.7.2 mark 2
242 * [r1695] Remove cross-reference to (obsolete?) moc package
243 * [r1694] Update for gtools 2.7.2
244 * [r1693] Update for R version 3.0.0 and later
245
246 2013-03-17 warnes
247
248 * [r1640] Fix error in smartbind: factor levels were not being
249 handled if the factor column was not present in the first data
250 frame.
251
252 2012-06-19 warnes
253
254 * [r1570] Update for gtools 2.7.0.
255 * [r1569] Document new 'verbose' argument to smartbind().
256 * [r1568] Clean up R CMD check warnings.
257
258 2012-05-04 warnes
259
260 * [r1529] smartbind(): Improve handling of factors and ordered
261 factors.
262
263 2011-10-05 warnes
264
265 * [r1518] Update version number for release
266 * [r1517] Add 'sep' argument to smartbind() to allow specification
267 of character used to separate components of constructed names
268
269 2011-09-28 warnes
270
271 * [r1513] smartbind(): Prevent coersion to data frame from mangling
272 column names.
273 * [r1512] Add 'fill' argument to smartbind() to specify a value to
274 use for
275 missing entries.
276 * [r1511] Add 'fill' argument to smartbind() to specify a value to
277 use for
278 missing entries.
279
280 2010-08-14 warnes
281
282 * [r1451] Modify mixedorder()/mixedsort() to better handle strings
283 containing multiple periods, like version numbers (e.g 1.1.2,
284 1.2.1. 1.1.1.1).
285
286 2010-05-01 warnes
287
288 * [r1434] Update version number for new release
289 * [r1433] Change Greg's email address to greg@warnes.net
290 * [r1432] Fix error in checkRVersion()
291
292 2010-04-28 ggrothendieck2
293
294 * [r1431] fixed problems with R CMD CHECK
295
296 2009-05-09 warnes
297
298 * [r1328] Escape $ in .Rd file to avoid latex issues
299 * [r1327] Update NEWS and create softlinks for NEWS and ChangeLog
300 in top level directory
301 * [r1326] Move actual NEWS file into inst.
302 * [r1325] Update Greg's email address and fix Rd syntax errors
303
304 2009-02-16 warnes
305
306 * [r1313] Correct windows make flags as suggested by Brian Ripley.
307
308 2008-08-15 warnes
309
310 * [r1303] Add keywords() function to show /doc/KEYWORDS file
311
312 2008-05-29 warnes
313
314 * [r1285] Add newVersionAvailable() function to compare running and
315 latest available R versions
316
317 2008-05-26 warnes
318
319 * [r1284] Update license specification
320 * [r1283] Remove 'assert' man page
321
322 2008-05-22 warnes
323
324 * [r1282] Finish rename of assert.R to assert-depricated.Rd
325 * [r1281] Add checkRVersion.R file
326 * [r1280] Rename again to get correct extension!
327 * [r1279] Update NEWS for 2.5.0
328 * [r1278] Add man page for checkRVersion
329 * [r1277] Rename assert-deprecated.R to assert.R to meet R file
330 name requirements.
331 * [r1276] Add checkRVersion to NAMESPACE, and increment version in
332 DESCRIPTION.
333 * [r1275] Remove broken SEE LSO reference
334
335 2008-04-12 warnes
336
337 * [r1259] Improve text explanation of how defmacro() and strmacro()
338 differ from
339 function().
340 * [r1258] assert() is now deprecated in favor of base::stopifnot()
341 * [r1257] Rename 'assert.R' to 'deprecated.R'.
342 * [r1256] Assert is now deprecated in favor of base::stopifnot(),
343 so add call to
344 .Deprecated() to inform the user.
345
346 2007-11-30 warnes
347
348 * [r1228] Update defnitions of odd() and even() to use modulus
349 operator instead of division. Prettier, I think, :-D
350
351 2007-08-08 warnes
352
353 * [r1121] Fix bug identified by R-2.6's check routings in
354 binsearch()
355 * [r1120] Add the binsearch(), previously in the genetics package.
356
357 2007-07-18 ggorjan
358
359 * [r1100] typo fixed
360
361 2007-04-12 warnes
362
363 * [r1088] Add ask() function to prompt the user and collect a
364 single response.
365
366 2007-04-07 warnes
367
368 * [r1087] Fix improper escapes in regexp detected by R 2.5.0
369 package check.
370
371 2007-03-23 warnes
372
373 * [r1083] Allow permutations for r>n provided repeats.allowed=TRUE
374
375 2006-11-28 warnes
376
377 * [r1023] Replace F with FALSE in smartbind example.
378
379 2006-11-27 warnes
380
381 * [r1022] Replace T with TRUE in smartbind example
382 * [r1021] Temprary remove to reset binary flag
383 * [r1020] Temprary remove to reset binary flag
384 * [r1019] Add smartbind() to list of exported functions, and add
385 corresponding
386 documentation file.
387 * [r1018] Update my email address
388
389 2006-11-14 ggorjan
390
391 * [r1012] Removed executable property
392
393 2006-08-02 warnes
394
395 * [r977] Update my email address
396
397 2006-05-05 nj7w
398
399 * [r958] Fixed minor typo - in {value} - n was replaced by r
400 * [r957] Fixed minor typos
401
402 2006-03-01 warnes
403
404 * [r903] Add smartbind function
405
406 2006-01-18 warnes
407
408 * [r845] Add concept tags to make mixedsort easier to locate.
409
410 2005-12-21 warnes
411
412 * [r837] Update version number and date
413 * [r836] Note changes for 2.2.3
414 * [r835] Should now work on Windows
415
416 2005-12-20 warnes
417
418 * [r834] Temporary fix to allow setTCPNoDelay.c to compile on
419 Windows. If compiled on windows calling setTCPNoDelay will just
420 raise an error.
421
422 2005-12-14 warnes
423
424 * [r813] Change C++ comment to standard comment
425
426 2005-12-13 nj7w
427
428 * [r810] *** empty log message ***
429 * [r809] Updated NEWS and removed ChangeLog
430
431 2005-12-12 nj7w
432
433 * [r800] Updated version for CRAN release
434
435 2005-12-08 warnes
436
437 * [r790] Add C source code for setTCPNoDelay.
438
439 2005-12-01 nj7w
440
441 * [r776] Updated Greg's email address
442
443 2005-11-29 warnes
444
445 * [r769] Add UseDynLib to NAMESPACE so the shared library gets
446 properly loaded.
447 * [r768] - Remove debugging comments
448 - Change return value on success to "Success".
449
450 2005-11-22 warnes
451
452 * [r758] NAMESPACE
453 * [r757] Update news for 2.2.1 release.
454 * [r756] Fixes for R CMD check
455 * [r755] Add setTCPNoDelay() function and documentation
456 * [r745] New function 'addLast' that adds functions to R's .Last()
457 so that
458 they will be executed when R is terminating.
459
460 2005-09-22 warnes
461
462 * [r678] More changes for strmacro(), also changes for 2.1.1
152463 release
153 * [r1714] man/addLast-deprecated.Rd, man/gtools-defunct.Rd,
154 man/gtools-deprecated.Rd, man/lastAdd.Rd: Make 'addLast()'
155 defunct.
156 * [r1713] R/addLast.R, R/lastAdd.R: Mark 'addLast()' as defunct and
157 move 'lastAdd()' function to a separate file.
158 * [r1712] DESCRIPTION, inst/NEWS: Update for gtools 3.0.1 release
159 * [r1711] R/mixedsort.R: Use 'suppressWarnings() instead of
160 'options(warn=-1)' in 'mixedorder()'.
161
162 2013-07-07 warnes
163
164 * [r1705] man/lastAdd.Rd: Fix typo.
165
166 2013-07-06 warnes
167
168 * [r1704] man/lastAdd.Rd: Fix Rd warning.
169 * [r1703] NAMESPACE: Include lastAdd in NAMESPACE
170 * [r1702] R/deprecated.R: Change assert from deprecated to defunct.
171 * [r1701] R/addLast.R: Improve deprecation message
172 * [r1700] DESCRIPTION, inst/NEWS: Update for gtools 3.0.0
173 * [r1699] R/addLast.R, man/addLast-deprecated.Rd, man/addLast.Rd,
174 man/gtools-defunct.Rd, man/gtools-deprecated.Rd, man/lastAdd.Rd:
175 Create new function lastAdd to replace addLast and mark addLast
176 as deprecated.
177
178 2013-07-05 warnes
179
180 * [r1698] inst/NEWS: Point out that addLast() modifies the value of
181 .Last in the global environment.
182 * [r1697] man/addLast.Rd: Point out that addLast() modifies the
183 value of .Last in the global environment.
184 * [r1696] DESCRIPTION, inst/NEWS: Update for gtools 2.7.2 mark 2
185 * [r1695] man/logit.Rd: Remove cross-reference to (obsolete?) moc
186 package
187 * [r1694] DESCRIPTION, inst/NEWS: Update for gtools 2.7.2
188 * [r1693] R/checkRVersion.R: Update for R version 3.0.0 and later
189
190 2013-03-17 warnes
191
192 * [r1640] R/smartbind.R: Fix error in smartbind: factor levels were
193 not being handled if the factor column was not present in the
194 first data frame.
195
196 2012-06-19 warnes
197
198 * [r1570] DESCRIPTION, inst/NEWS: Update for gtools 2.7.0.
199 * [r1569] man/smartbind.Rd: Document new 'verbose' argument to
200 smartbind().
201 * [r1568] R/addLast.R, R/running.R: Clean up R CMD check warnings.
202
203 2012-05-04 warnes
204
205 * [r1529] R/smartbind.R: smartbind(): Improve handling of factors
206 and ordered factors.
207
208 2011-10-05 warnes
209
210 * [r1518] DESCRIPTION: Update version number for release
211 * [r1517] R/smartbind.R, man/smartbind.Rd: Add 'sep' argument to
212 smartbind() to allow specification of character used to separate
213 components of constructed names
214
215 2011-09-28 warnes
216
217 * [r1513] R/smartbind.R: smartbind(): Prevent coersion to data
218 frame from mangling column names.
219 * [r1512] R/smartbind.R, inst/NEWS: Add 'fill' argument to
220 smartbind() to specify a value to use for
221 missing entries.
222 * [r1511] DESCRIPTION, man/smartbind.Rd: Add 'fill' argument to
223 smartbind() to specify a value to use for
224 missing entries.
225
226 2010-08-14 warnes
227
228 * [r1451] R/mixedsort.R: Modify mixedorder()/mixedsort() to better
229 handle strings containing multiple periods, like version numbers
230 (e.g 1.1.2, 1.2.1. 1.1.1.1).
231
232 2010-05-01 warnes
233
234 * [r1434] DESCRIPTION: Update version number for new release
235 * [r1433] DESCRIPTION, man/addLast.Rd, man/ask.Rd,
236 man/binsearch.Rd, man/capture.Rd, man/combinations.Rd,
237 man/defmacro.Rd, man/dirichlet.Rd, man/foldchange.Rd,
238 man/invalid.Rd, man/keywords.Rd, man/logit.Rd, man/mixedsort.Rd,
239 man/oddeven.Rd, man/permute.Rd, man/quantcut.Rd, man/running.Rd,
240 man/scat.Rd, man/setTCPNoDelay.Rd, man/smartbind.Rd: Change
241 Greg's email address to greg@warnes.net
242 * [r1432] R/checkRVersion.R: Fix error in checkRVersion()
243
244 2010-04-28 ggrothendieck2
245
246 * [r1431] R/quantcut.R, R/strmacro.R, man/binsearch.Rd,
247 man/capture.Rd, man/setTCPNoDelay.Rd: fixed problems with R CMD
248 CHECK
249
250 2009-05-09 warnes
251
252 * [r1328] man/keywords.Rd: Escape $ in .Rd file to avoid latex
253 issues
254 * [r1327] ChangeLog, NEWS, inst/NEWS: Update NEWS and create
255 softlinks for NEWS and ChangeLog in top level directory
256 * [r1326] NEWS, inst, inst/NEWS: Move actual NEWS file into inst.
257 * [r1325] DESCRIPTION, man/addLast.Rd, man/binsearch.Rd,
258 man/capture.Rd, man/combinations.Rd, man/defmacro.Rd,
259 man/dirichlet.Rd, man/foldchange.Rd, man/gtools-deprecated.Rd,
260 man/invalid.Rd, man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd,
261 man/permute.Rd, man/quantcut.Rd, man/running.Rd, man/scat.Rd,
262 man/setTCPNoDelay.Rd, man/smartbind.Rd: Update Greg's email
263 address and fix Rd syntax errors
264
265 2009-02-16 warnes
266
267 * [r1313] src/Makevars.win: Correct windows make flags as suggested
268 by Brian Ripley.
269
270 2008-08-15 warnes
271
272 * [r1303] DESCRIPTION, NAMESPACE, R/keywords.R, man/keywords.Rd:
273 Add keywords() function to show /doc/KEYWORDS file
274
275 2008-05-29 warnes
276
277 * [r1285] R/newVersionAvailable.R: Add newVersionAvailable()
278 function to compare running and latest available R versions
279
280 2008-05-26 warnes
281
282 * [r1284] DESCRIPTION: Update license specification
283 * [r1283] man/assert-deprecated.Rd: Remove 'assert' man page
284
285 2008-05-22 warnes
286
287 * [r1282] man/assert.R: Finish rename of assert.R to
288 assert-depricated.Rd
289 * [r1281] R/checkRVersion.R: Add checkRVersion.R file
290 * [r1280] man/assert-deprecated.Rd: Rename again to get correct
291 extension!
292 * [r1279] NEWS: Update NEWS for 2.5.0
293 * [r1278] man/checkRVersion.Rd: Add man page for checkRVersion
294 * [r1277] man/assert-deprecated.R, man/assert.R: Rename
295 assert-deprecated.R to assert.R to meet R file name requirements.
296 * [r1276] DESCRIPTION, NAMESPACE: Add checkRVersion to NAMESPACE,
297 and increment version in DESCRIPTION.
298 * [r1275] man/gtools-deprecated.Rd: Remove broken SEE LSO reference
299
300 2008-04-12 warnes
301
302 * [r1259] man/defmacro.Rd: Improve text explanation of how
303 defmacro() and strmacro() differ from
304 function().
305 * [r1258] NEWS, man/assert-deprecated.R, man/assert.Rd,
306 man/gtools-deprecated.Rd: assert() is now deprecated in favor of
307 base::stopifnot()
308 * [r1257] R/assert.R, R/deprecated.R: Rename 'assert.R' to
309 'deprecated.R'.
310 * [r1256] R/assert.R: Assert is now deprecated in favor of
311 base::stopifnot(), so add call to
312 .Deprecated() to inform the user.
313
314 2007-11-30 warnes
315
316 * [r1228] R/oddeven.R: Update defnitions of odd() and even() to use
317 modulus operator instead of division. Prettier, I think, :-D
318
319 2007-08-08 warnes
320
321 * [r1121] DESCRIPTION, R/binsearch.R: Fix bug identified by R-2.6's
322 check routings in binsearch()
323 * [r1120] DESCRIPTION, NAMESPACE, NEWS, R/binsearch.R,
324 man/binsearch.Rd: Add the binsearch(), previously in the genetics
325 package.
326
327 2007-07-18 ggorjan
328
329 * [r1100] man/combinations.Rd: typo fixed
330
331 2007-04-12 warnes
332
333 * [r1088] NAMESPACE, NEWS, R/ask.R, man/ask.Rd: Add ask() function
334 to prompt the user and collect a single response.
335
336 2007-04-07 warnes
337
338 * [r1087] DESCRIPTION, R/mixedsort.R: Fix improper escapes in
339 regexp detected by R 2.5.0 package check.
340
341 2007-03-23 warnes
342
343 * [r1083] R/combinations.R: Allow permutations for r>n provided
344 repeats.allowed=TRUE
345
346 2006-11-28 warnes
347
348 * [r1023] man/smartbind.Rd: Replace F with FALSE in smartbind
349 example.
350
351 2006-11-27 warnes
352
353 * [r1022] man/smartbind.Rd: Replace T with TRUE in smartbind
354 example
355 * [r1021] data/ELISA.rda: Temprary remove to reset binary flag
356 * [r1020] data/ELISA.rda: Temprary remove to reset binary flag
357 * [r1019] DESCRIPTION, NAMESPACE, NEWS, R/smartbind.R,
358 man/smartbind.Rd: Add smartbind() to list of exported functions,
359 and add corresponding
360 documentation file.
361 * [r1018] DESCRIPTION: Update my email address
362
363 2006-11-14 ggorjan
364
365 * [r1012] R/combinations.R, R/running.R, man/ELISA.Rd,
366 man/combinations.Rd: Removed executable property
367
368 2006-08-02 warnes
369
370 * [r977] man/addLast.Rd, man/assert.Rd, man/capture.Rd,
371 man/combinations.Rd, man/defmacro.Rd, man/dirichlet.Rd,
372 man/foldchange.Rd, man/invalid.Rd, man/logit.Rd,
373 man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
374 man/quantcut.Rd, man/running.Rd, man/scat.Rd,
375 man/setTCPNoDelay.Rd: Update my email address
376
377 2006-05-05 nj7w
378
379 * [r958] man/combinations.Rd: Fixed minor typo - in {value} - n was
380 replaced by r
381 * [r957] NAMESPACE, man/capture.Rd: Fixed minor typos
382
383 2006-03-01 warnes
384
385 * [r903] R/smartbind.R: Add smartbind function
386
387 2006-01-18 warnes
388
389 * [r845] man/mixedsort.Rd: Add concept tags to make mixedsort
390 easier to locate.
391
392 2005-12-21 warnes
393
394 * [r837] DESCRIPTION: Update version number and date
395 * [r836] NEWS: Note changes for 2.2.3
396 * [r835] src/Makevars.win, src/setTCPNoDelay.c: Should now work on
397 Windows
398
399 2005-12-20 warnes
400
401 * [r834] src/setTCPNoDelay.c: Temporary fix to allow
402 setTCPNoDelay.c to compile on Windows. If compiled on windows
403 calling setTCPNoDelay will just raise an error.
404
405 2005-12-14 warnes
406
407 * [r813] src/setTCPNoDelay.c: Change C++ comment to standard
408 comment
409
410 2005-12-13 nj7w
411
412 * [r810] ChangeLog: *** empty log message ***
413 * [r809] NEWS: Updated NEWS and removed ChangeLog
414
415 2005-12-12 nj7w
416
417 * [r800] DESCRIPTION: Updated version for CRAN release
418
419 2005-12-08 warnes
420
421 * [r790] src, src/setTCPNoDelay.c: Add C source code for
422 setTCPNoDelay.
423
424 2005-12-01 nj7w
425
426 * [r776] man/combinations.Rd, man/foldchange.Rd, man/invalid.Rd,
427 man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd, man/quantcut.Rd,
428 man/running.Rd: Updated Greg's email address
429
430 2005-11-29 warnes
431
432 * [r769] NAMESPACE: Add UseDynLib to NAMESPACE so the shared
433 library gets properly loaded.
434 * [r768] R/setTCPNoDelay.R: - Remove debugging comments
435 - Change return value on success to "Success".
436
437 2005-11-22 warnes
438
439 * [r758] NAMESPACE: NAMESPACE
440 * [r757] NEWS: Update news for 2.2.1 release.
441 * [r756] man/addLast.Rd, man/setTCPNoDelay.Rd: Fixes for R CMD
442 check
443 * [r755] DESCRIPTION, NAMESPACE, R/setTCPNoDelay.R,
444 man/setTCPNoDelay.Rd: Add setTCPNoDelay() function and
445 documentation
446 * [r745] R/addLast.R, man/addLast.Rd: New function 'addLast' that
447 adds functions to R's .Last() so that
448 they will be executed when R is terminating.
449
450 2005-09-22 warnes
451
452 * [r678] DESCRIPTION, NAMESPACE, man/defmacro.Rd: More changes for
453 strmacro(), also changes for 2.1.1 release
454 * [r677] R/defmacro.R, R/strmacro.R, man/defmacro.Rd: Add strmaco()
455 which defines functions that use strings for macro definition
464 * [r677] Add strmaco() which defines functions that use strings for
465 macro definition
456466
457467 2005-09-21 warnes
458468
459 * [r676] DESCRIPTION, R/defmacro.R, man/defmacro.Rd: Add support
460 for DOTS/... arguments to defmacro
469 * [r676] Add support for DOTS/... arguments to defmacro
461470
462471 2005-09-12 nj7w
463472
464 * [r671] man/assert.Rd, man/dirichlet.Rd, man/permute.Rd,
465 man/scat.Rd: Updated Greg's email
473 * [r671] Updated Greg's email
466474
467475 2005-09-02 nj7w
468476
469 * [r653] NAMESPACE: Exported assert
470 * [r652] DESCRIPTION: Updated the version number
471 * [r651] NEWS: Added NEWS
472 * [r650] ChangeLog: Added ChangeLog
473 * [r649] man/assert.Rd: Fixed syntax errors
477 * [r653] Exported assert
478 * [r652] Updated the version number
479 * [r651] Added NEWS
480 * [r650] Added ChangeLog
481 * [r649] Fixed syntax errors
474482
475483 2005-09-02 warnes
476484
477 * [r648] R/assert.R, man/assert.Rd: Add assert() and documentation
478 * [r647] man/defmacro.Rd: Fix problem in defmacro.Rd file: don't
479 use \code{} in the example section.
485 * [r648] Add assert() and documentation
486 * [r647] Fix problem in defmacro.Rd file: don't use \code{} in the
487 example section.
480488
481489 2005-08-31 warnes
482490
483 * [r645] DESCRIPTION, NAMESPACE, R/defmacro.R, man/defmacro.Rd:
484 Adding the defmacro() function, extracted from
491 * [r645] Adding the defmacro() function, extracted from
485492
486493 Lumley T. "Programmer's Niche: Macros in {R}", R News, 2001, Vol
487494 1,
488495 No. 3, pp 11--13, \url{http://CRAN.R-project.org/doc/Rnews/}
489 * [r642] DESCRIPTION, DESCRIPTION.in: Add stand-alone DESCRIPTION
490 file and remove old DESCRIPTION.in file.
496 * [r642] Add stand-alone DESCRIPTION file and remove old
497 DESCRIPTION.in file.
491498
492499 2005-06-13 nj7w
493500
494 * [r626] R/mixedsort.R: Fixed a bug in mixedsort - check if
495 "which.na" and "which.blank" is numeric(0) before subsetting the
496 datasets.
501 * [r626] Fixed a bug in mixedsort - check if "which.na" and
502 "which.blank" is numeric(0) before subsetting the datasets.
497503
498504 2005-06-09 nj7w
499505
500 * [r625] R/RSCompat.S, R/combinations.R, R/dirichlet.R,
501 R/foldchange.R, R/invalid.R, R/logit.R, R/mixedsort.R,
502 R/oddeven.R, R/permute.R, R/quantcut.R, R/running.R, R/scat.R,
503 man/ELISA.Rd, man/combinations.Rd, man/dirichlet.Rd,
504 man/foldchange.Rd, man/invalid.Rd, man/logit.Rd,
505 man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
506 man/quantcut.Rd, man/running.Rd, man/scat.Rd: Updating the
507 version number, and various help files to synchronize splitting
508 of gregmisc bundle in 4 individual components.
506 * [r625] Updating the version number, and various help files to
507 synchronize splitting of gregmisc bundle in 4 individual
508 components.
509509
510510 2005-05-10 warnes
511511
512 * [r619] R/mixedsort.R: Fix handling of NA's in mixedorder. We were
513 using a high UTF character to try
512 * [r619] Fix handling of NA's in mixedorder. We were using a high
513 UTF character to try
514514 to put NA's at the end of the sort order, but R 2.1.0 checks if
515515 characters
516516 are in the correct range. Instead, we explicitly force NA's to
518518
519519 2005-04-07 warnes
520520
521 * [r606] NAMESPACE, R/scat.R, man/scat.Rd: - Add scat() function
522 which writes its arguments to stderr and
521 * [r606] - Add scat() function which writes its arguments to stderr
522 and
523523 flushes so that output is immediately displayed, but only if
524524 'getOption("DEBUG")' is true.
525525
526526 2005-04-02 warnes
527527
528 * [r600] NAMESPACE, R/drop.levels.R, man/drop.levels.Rd: Move
529 drop.levels() from gtools to gdata.
530 * [r599] R/mixedsort.R: Minor reordering of functions in file
531 * [r598] NAMESPACE, R/frameApply.R, man/frameApply.Rd: Move
532 frameApply() to gdata package.
533 * [r597] R/mixedsort.R: Fix error if only one value passed to
534 mixedorder.
535 * [r596] R/quantcut.R, man/quantcut.Rd: Add proper handling where
536 more than one quantile obtains the same value
528 * [r600] Move drop.levels() from gtools to gdata.
529 * [r599] Minor reordering of functions in file
530 * [r598] Move frameApply() to gdata package.
531 * [r597] Fix error if only one value passed to mixedorder.
532 * [r596] Add proper handling where more than one quantile obtains
533 the same value
537534
538535 2005-04-01 warnes
539536
540 * [r595] man/ELISA.Rd, man/combinations.Rd, man/dirichlet.Rd,
541 man/drop.levels.Rd, man/foldchange.Rd, man/invalid.Rd,
542 man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
543 man/quantcut.Rd, man/running.Rd: Add CVS ID tag to file headers.
544 * [r594] R/frameApply.R, man/frameApply.Rd: Fixes from Jim Rogers
545 for R CMD check problems in frameApply
537 * [r595] Add CVS ID tag to file headers.
538 * [r594] Fixes from Jim Rogers for R CMD check problems in
539 frameApply
546540
547541 2005-03-31 warnes
548542
549 * [r591] R/drop.levels.R, R/frameApply.R, man/drop.levels.Rd,
550 man/frameApply.Rd: Updates to drop.levels() and frameApply() from
551 Jim Rogers
552 * [r590] data, data/ELISA.rda, man/ELISA.Rd: Add ELISA data set
553 used by frameApply and drop.levels examples
543 * [r591] Updates to drop.levels() and frameApply() from Jim Rogers
544 * [r590] Add ELISA data set used by frameApply and drop.levels
545 examples
554546
555547 2005-02-25 warnes
556548
557 * [r562] man/frameApply.Rd: Replace 'T' with TRUE.
558 * [r561] man/frameApply.Rd: Remove dependency on ELISA data set for
559 the example.
560 * [r558] NAMESPACE: Add drop.levels, frameApply to namespace
561 export.
549 * [r562] Replace 'T' with TRUE.
550 * [r561] Remove dependency on ELISA data set for the example.
551 * [r558] Add drop.levels, frameApply to namespace export.
562552
563553 2005-02-15 warnes
564554
565 * [r542] R/drop.levels.R, R/frameApply.R, man/drop.levels.Rd,
566 man/frameApply.Rd: Add frameApply and drop.levels contributed by
567 Jim Rogers.
555 * [r542] Add frameApply and drop.levels contributed by Jim Rogers.
568556
569557 2005-01-12 warnes
570558
571 * [r515] DESCRIPTION.in: Add dependency on R 1.9.0+ to prevent
572 poeple from installing on old
559 * [r515] Add dependency on R 1.9.0+ to prevent poeple from
560 installing on old
573561 versions of R which don't support namespaces.
574562
575563 2004-09-27 warneg
576564
577 * [r461] DESCRIPTION, DESCRIPTION.in, man/running.Rd: Updated to
578 pass R CMD check.
565 * [r461] Updated to pass R CMD check.
579566
580567 2004-09-03 warneg
581568
582 * [r446] DESCRIPTION, NAMESPACE, R/dirichlet.R, R/foldchange.R,
583 R/invalid.R, R/mixedsort.R, R/oddeven.R, R/permute.R,
584 R/quantcut.R, R/running.R, man/running.Rd: initial bundle checkin
569 * [r446] initial bundle checkin
585570
586571 2004-09-02 warneg
587572
588 * [r442] DESCRIPTION, DESCRIPTION.in, NAMESPACE: Initial revision
573 * [r442] Initial revision
589574
590575 2004-08-27 warnes
591576
592 * [r441] R/mixedsort.R, man/mixedsort.Rd: Fixed bug in mixedsort,
593 and modified reorder.factor to use mixedsort.
577 * [r441] Fixed bug in mixedsort, and modified reorder.factor to use
578 mixedsort.
594579
595580 2004-08-26 warnes
596581
597 * [r440] R/mixedsort.R: - Fix bug pointed out by Jim Rogers.
582 * [r440] - Fix bug pointed out by Jim Rogers.
598583 - Use a more distictive internal separator: $@$ instead of just $
599584 - Capitalization is now irrelevent for search order (unlike
600585 ASCII).
601586
602587 2004-06-08 warnes
603588
604 * [r372] R/running.R, man/running.Rd: Nitin Jain added by=
605 parameter to allow specifying separation between groups.
589 * [r372] Nitin Jain added by= parameter to allow specifying
590 separation between groups.
606591
607592 2004-05-26 warnes
608593
609 * [r345] man/combinations.Rd: Escape underscores in email addresses
610 so Latex is happy.
611 * [r343] R/combinations.R: Replace 'T' with 'TRUE' to pass R CMD
612 check.
594 * [r345] Escape underscores in email addresses so Latex is happy.
595 * [r343] Replace 'T' with 'TRUE' to pass R CMD check.
613596
614597 2004-05-25 warnes
615598
616 * [r334] R/combinations.R: Remove extraneous comments.
617 * [r333] R/combinations.R: Fix an error in the code when using
618 repeats.allow=T and r>2. Bug
599 * [r334] Remove extraneous comments.
600 * [r333] Fix an error in the code when using repeats.allow=T and
601 r>2. Bug
619602 report and fix both due to Elizabeth Purdom
620603 <epurdom@stanford.edu>.
621604
622605 2004-05-24 warnes
623606
624 * [r323] R/invalid.R: Check if argument is a vector before doing
625 is.na to avoid generating a warning.
626 * [r322] R/invalid.R, man/invalid.Rd: Add invalid() function for
627 testing if a parameter value is non-missing, non-NA,
607 * [r323] Check if argument is a vector before doing is.na to avoid
608 generating a warning.
609 * [r322] Add invalid() function for testing if a parameter value is
610 non-missing, non-NA,
628611 non-NULL.
629612
630613 2004-04-27 warnes
631614
632 * [r321] R/running.R, man/running.Rd: Replaced argument `as.list'
633 with `simplify'. Updated documentation,
615 * [r321] Replaced argument `as.list' with `simplify'. Updated
616 documentation,
634617 and updated examples appropriately.
635618
636619 2004-04-26 warnes
637620
638 * [r320] R/running.R, man/running.Rd: Added as.list argument to
639 return one list element per evaluation.
621 * [r320] Added as.list argument to return one list element per
622 evaluation.
640623
641624 2004-03-26 warnes
642625
643 * [r303] man/combinations.Rd: Uncomment and fix large 'n' example.
644 * [r301] man/running.Rd: - Update to match changes in running()
626 * [r303] Uncomment and fix large 'n' example.
627 * [r301] - Update to match changes in running()
645628 - Add examples to illustrate new arguments.
646629 - Modify running correlation plot example to be more clear.
647 * [r299] R/running.R: More of the same.
648 * [r297] R/running.R: Fix bug discovered by Sean Davis
649 <sdavis2@mail.nih.gov>. The running
630 * [r299] More of the same.
631 * [r297] Fix bug discovered by Sean Davis <sdavis2@mail.nih.gov>.
632 The running
650633 function took an improper shortcut. When allow.fewer=FALSE it was
651634 still passing shorter lists of elements to the called function,
652635 and
657640
658641 2004-01-21 warnes
659642
660 * [r277] R/capture.R: - Mark sprint() as depreciated.
643 * [r277] - Mark sprint() as depreciated.
661644 - Replace references to sprint with capture.output()
662645 - Use match.arg for halign and valign arguments to
663646 textplot.default.
669652
670653 2003-12-03 warnes
671654
672 * [r253] man/foldchange.Rd: - match function argument defaults with
673 'usage'
655 * [r253] - match function argument defaults with 'usage'
674656
675657 2003-11-21 warnes
676658
677 * [r237] man/foldchange.Rd: Removed 'deqn' call that was confusing
678 things.
679 * [r234] man/logit.Rd: Add email address to author field
680 * [r233] R/foldchange.R, man/foldchange.Rd: - new files
681 * [r232] R/mixedsort.R, man/mixedsort.Rd: - Change 'T' to 'TRUE' in
682 mixedsort.R
659 * [r237] Removed 'deqn' call that was confusing things.
660 * [r234] Add email address to author field
661 * [r233] - new files
662 * [r232] - Change 'T' to 'TRUE' in mixedsort.R
683663 - Add missing brace in mixedsort.Rd
684664
685665 2003-11-20 warnes
686666
687 * [r230] R/oddeven.R, man/oddeven.Rd: - Move 'odd' and 'even'
688 functions to a separate file & provide documentation
667 * [r230] - Move 'odd' and 'even' functions to a separate file &
668 provide documentation
689669
690670 2003-11-18 warnes
691671
692 * [r227] R/mixedsort.R, man/mixedsort.Rd: - Renamed smartsort to
693 mixedsort and added documentation.
672 * [r227] - Renamed smartsort to mixedsort and added documentation.
694673
695674 2003-11-10 warnes
696675
697 * [r220] R/capture.R, man/capture.Rd: - Add files contributed by
698 Arni Magnusson
676 * [r220] - Add files contributed by Arni Magnusson
699677 <arnima@u.washington.edu>. As well as some of my own.
700678
701679 2003-05-23 warnes
702680
703 * [r196] R/logit.R, man/logit.Rd: - library() backported from
704 1.7-devel. This version of the function
681 * [r196] - library() backported from 1.7-devel. This version of the
682 function
705683 adds the "pos=" argument to specify where in the search path the
706684 library should be placed.
707685
715693
716694 2003-04-22 warnes
717695
718 * [r189] man/combinations.Rd: - Fixed tpyo in example that allowed
719 combinations(500,2) to run when
696 * [r189] - Fixed tpyo in example that allowed combinations(500,2)
697 to run when
720698 it should have been ignred for testing..
721699
722700 2003-04-10 warnes
723701
724 * [r186] man/combinations.Rd: - Added note about the need to
725 increase options("expressions") to use
702 * [r186] - Added note about the need to increase
703 options("expressions") to use
726704 large values for 'n'. Prompted by bug report from Huan Huang
727705 <huan.huang@bnpparibas.com
728706
729707 2003-04-04 warnes
730708
731 * [r183] R/RSCompat.S: - Replace 'T' with 'TRUE'
732 * [r182] R/dirichlet.R: - Change occurences of 'T' to 'TRUE'
733 * [r181] man/capture.Rd: - Allow optional arguments to sprint to be
734 passed to print
709 * [r183] - Replace 'T' with 'TRUE'
710 * [r182] - Change occurences of 'T' to 'TRUE'
711 * [r181] - Allow optional arguments to sprint to be passed to print
735712 - Fix R CMD check errors
736 * [r180] R/capture.R: - Allow optional arguments to sprint to be
737 passed to print
713 * [r180] - Allow optional arguments to sprint to be passed to print
738714
739715 2003-04-03 warnes
740716
741 * [r177] man/capture.Rd: - Had mistyped 'sprint' as 'sprintf'.
742 * [r176] man/capture.Rd: - Add help file for capture and sprintf.
717 * [r177] - Had mistyped 'sprint' as 'sprintf'.
718 * [r176] - Add help file for capture and sprintf.
743719
744720 2003-04-02 warnes
745721
746 * [r174] R/capture.R: - Added file 'capture.R' containing capture()
747 and sprint().
722 * [r174] - Added file 'capture.R' containing capture() and
723 sprint().
748724
749725 2003-03-07 warnes
750726
751 * [r168] R/RSCompat.S: - Minor changes to code to allow the package
752 to be provided as an
727 * [r168] - Minor changes to code to allow the package to be
728 provided as an
753729 S-Plus chapter.
754730
755731 2003-01-30 warnes
756732
757 * [r161] man/running.Rd: - Fixed typo in email address.
733 * [r161] - Fixed typo in email address.
758734
759735 2003-01-02 warnes
760736
761 * [r148] R/RSCompat.S: - Add nlevels function.
737 * [r148] - Add nlevels function.
762738
763739 2002-10-11 warnes
764740
765 * [r133] R/permute.R, man/permute.Rd: - Add permute() function
766 (wraper for sample) and man page
767 * [r132] man/dirichlet.Rd: - Escaped underscores in my email
768 address that was causing a parse
741 * [r133] - Add permute() function (wraper for sample) and man page
742 * [r132] - Escaped underscores in my email address that was causing
743 a parse
769744 error in the {r,p}dirichlet man page.
770745
771746 2002-09-30 warnes
772747
773 * [r128] R/dirichlet.R, man/dirichlet.Rd: - Added rdirichlet() and
774 ddirichlet() with accompaning help page and tests.
748 * [r128] - Added rdirichlet() and ddirichlet() with accompaning
749 help page and tests.
775750
776751 2002-09-24 warnes
777752
778 * [r122] R/running.R: - Fixed error where running was always
779 calling running2 with
753 * [r122] - Fixed error where running was always calling running2
754 with
780755 'fun=mean', ignoring the specified funtion.
781756
782757 2002-09-23 warnes
783758
784 * [r117] man/combinations.Rd, man/quantcut.Rd: - Modified all files
785 to include CVS Id and Log tags.
786 * [r116] R/combinations.R: - Added CrossTable() and barplot2() code
787 and docs contributed by Marc Schwartz.
759 * [r117] - Modified all files to include CVS Id and Log tags.
760 * [r116] - Added CrossTable() and barplot2() code and docs
761 contributed by Marc Schwartz.
788762 - Permit combinations() to be used when r>n provided
789763 repeat.allowed=TRUE
790764 - Bumped up version number
791765
792766 2002-08-01 warnes
793767
794 * [r114] R/running.R: - Corrected documentation mismatch for ci,
795 ci.default.
768 * [r114] - Corrected documentation mismatch for ci, ci.default.
796769
797770 - Replaced all occurences of '_' for assignment with '<-'.
798771
804777
805778 2002-04-09 warneg
806779
807 * [r109] R/combinations.R, man/combinations.Rd, man/running.Rd:
808 Checkin for version 0.5.3
780 * [r109] Checkin for version 0.5.3
809781
810782 2002-03-26 warneg
811783
812 * [r97] man/quantcut.Rd: Initial Checkin
813 * [r96] R/quantcut.R: Initial checkin.
784 * [r97] Initial Checkin
785 * [r96] Initial checkin.
814786
815787 2002-03-20 warneg
816788
817 * [r91] R/RSCompat.S: - Added definition of is.R function.
789 * [r91] - Added definition of is.R function.
818790
819791 - Added boxplot.formula
820792
821793 2002-03-07 warneg
822794
823 * [r90] man/running.Rd: - Added documentation and example for
824 running2
825 * [r89] R/running.R: - Added "running2", which handles both
826 univariate and bivariate cases
795 * [r90] - Added documentation and example for running2
796 * [r89] - Added "running2", which handles both univariate and
797 bivariate cases
827798 - Modified "running" to call "running2"
828799
829800 2002-02-05 warneg
830801
831 * [r75] R/RSCompat.S: - Fix typo that caused code meant to run only
832 under S-Plus to run
802 * [r75] - Fix typo that caused code meant to run only under S-Plus
803 to run
833804 under R, causing problems.
834805
835806 2001-12-19 warneg
836807
837 * [r67] R/RSCompat.S: - Added code for %in%.
808 * [r67] - Added code for %in%.
838809
839810 2001-09-18 warneg
840811
841 * [r18] R/RSCompat.S: Release 0.3.2
812 * [r18] Release 0.3.2
842813
843814 2001-09-01 warneg
844815
845 * [r17] R/RSCompat.S: Initial checkin.
846 * [r16] R/running.R, man/running.Rd: Release 0.3.0
816 * [r17] Initial checkin.
817 * [r16] Release 0.3.0
847818
848819 2001-08-25 warneg
849820
850 * [r13] R/running.R: Initial CVS checkin.
851 * [r11] man/combinations.Rd: Fixed a typo and a syntax error.
852 * [r7] man/running.Rd: Initial Checkin
821 * [r13] Initial CVS checkin.
822 * [r11] Fixed a typo and a syntax error.
823 * [r7] Initial Checkin
853824
854825 2001-06-29 warneg
855826
856 * [r6] ., R, R/combinations.R, man, man/combinations.Rd: Initial
857 revision.
858
827 * [r6] Initial revision.
828
00 Package: gtools
11 Title: Various R Programming Tools
22 Description: Functions to assist in R programming, including:
3 - assist in developing, updating, and maintaining R and R packages ('ask', 'checkRVersion',
4 'getDependencies', 'keywords', 'scat'),
3 - assist in developing, updating, and maintaining R and R packages ('ask', 'checkRVersion',
4 'getDependencies', 'keywords', 'scat'),
55 - calculate the logit and inverse logit transformations ('logit', 'inv.logit'),
66 - test if a value is missing, empty or contains only NA and NULL values ('invalid'),
77 - manipulate R's .Last function ('addLast'),
88 - define macros ('defmacro'),
99 - detect odd and even integers ('odd', 'even'),
10 - convert strings containing non-ASCII characters (like single quotes) to plain ASCII ('ASCIIfy'),
11 - perform a binary search ('binseach'),
10 - convert strings containing non-ASCII characters (like single quotes) to plain ASCII ('ASCIIfy'),
11 - perform a binary search ('binsearch'),
1212 - sort strings containing both numeric and character components ('mixedsort'),
1313 - create a factor variable from the quantiles of a continuous variable ('quantcut'),
1414 - enumerate permutations and combinations ('combinations', 'permutation'),
15 - calculate and convert between fold-change and log-ratio ('foldchange',
15 - calculate and convert between fold-change and log-ratio ('foldchange',
1616 'logratio2foldchange', 'foldchange2logratio'),
17 - calculate probabilities and generate random numbers from Dirichlet distributions
17 - calculate probabilities and generate random numbers from Dirichlet distributions
1818 ('rdirichlet', 'ddirichlet'),
1919 - apply a function over adjacent subsets of a vector ('running'),
20 - Modify the TCP\_NODELAY ('de-Nagle') flag for socket objects,
21 - Efficient 'rbind' of data frames, even if the column names don't match ('smartbind'),
22 - Generate significance stars from p-values ('stars.pval').
23 Version: 3.4.2
24 Date: 2015-04-06
20 - modify the TCP\_NODELAY ('de-Nagle') flag for socket objects,
21 - efficient 'rbind' of data frames, even if the column names don't match ('smartbind'),
22 - generate significance stars from p-values ('stars.pval'),
23 - convert characters to/from ASCII codes.
24 Version: 3.5.0
25 Date: 2015-05-26
2526 Author: Gregory R. Warnes, Ben Bolker, and Thomas Lumley
2627 Maintainer: Gregory R. Warnes <greg@warnes.net>
27 License: LGPL-2.1
28 Packaged: 2015-04-10 12:37:28 UTC; gwarnes1
28 License: GPL-2
29 Repository: CRAN
30 Repository/R-Forge/Project: r-gregmisc
31 Repository/R-Forge/Revision: 2048
32 Repository/R-Forge/DateTimeStamp: 2015-05-27 16:38:37
33 Date/Publication: 2015-05-29 10:36:40
2934 NeedsCompilation: yes
30 Repository: CRAN
31 Date/Publication: 2015-04-10 14:48:31
35 Packaged: 2015-05-27 16:45:10 UTC; rforge
36 Depends: R (>= 2.10)
+26
-16
MD5 less more
0 8ce65e8748f62a15a845d463ef9dc4ce *ChangeLog
1 799ef0349c13933fc12a76ecb5f602c8 *DESCRIPTION
2 f8ec272fd1610ad963b6fc8fb5469b64 *NAMESPACE
3 4b56bef437760c3635aaf7a0b28b33c7 *NEWS
0 4b0aeb3913d411a5e1e6127d40dd770d *ChangeLog
1 bc9c4bf090a979e97a42a514cced2b0b *DESCRIPTION
2 d4beab1e34afb8dc3c154213bdbd7fe7 *NAMESPACE
3 b92b360a7ff045e56efb600e1b5d3932 *NEWS
44 40be776640196133aebff67618b08dec *R/ASCIIfy.R
55 9eb418fd95aa09ba85aed159545dea61 *R/RSCompat.S
66 a86a74ba04089ad58ea22e3a994a9b14 *R/addLast.R
7 c6b3619410daf7b88dfc6e852fe1c322 *R/asc.R
78 c4ae0d6b5867f6751981e9f93cd2f619 *R/ask.R
89 7e3c03026275ec8e336c73314cb73a69 *R/binsearch.R
910 c70220a92fd3c5781638e3779cbd55ff *R/checkRVersion.R
11 b1dfaaaf624c59b2ee5eeb680a412be7 *R/checkReverseDependencies.R
1012 421b9d08ece06f33c20d21ad62ad768b *R/clean_up_dependencies2.R
1113 529f69b81b6b734a4f637d250b5b71f9 *R/combinations.R
1214 1c333b16a59dcaf7ccf20151962b6375 *R/defmacro.R
1315 28d70252e7e25f8e3743fc07434acba9 *R/defunct.R
1416 344b58e1976792a3295238c17df7e917 *R/deprecated.R
15 c089bb5f542501dc1e3ba07f032c84ed *R/dirichlet.R
17 e5149cd525adc83044c3a3eed1d432bf *R/dirichlet.R
1618 1da2198e1d194c705ca89381159b7b63 *R/foldchange.R
1719 e759eb4772cb9ce930a0c570279155b3 *R/getDependencies.R
1820 71212f4c14003458fc3e30638f339629 *R/invalid.R
19 3f3921bb8ada00eb6fbf7332d689e108 *R/keywords.R
21 d7058406d6e00cdae229c8ee030df465 *R/keywords.R
2022 f00dfc3263a5854151f244493b3f04d0 *R/lastAdd.R
2123 66f7bacaa290264693ee1b4cbe4cadc8 *R/loadedPackages.R
2224 2bb525e1930ec3ba2afefa2ff43d74e0 *R/logit.R
23 a3ec77919e3a6792f88a0aa39fae4841 *R/mixedsort.R
25 a93b94a3690a900de1eb5145194a34f2 *R/mixedsort.R
2426 429ab819b15f97c8dd6e62db278336d9 *R/na.replace.R
2527 93a46a6ef5937bdd112468daceac00a6 *R/newVersionAvailable.R
2628 07cd779ab7e64f697604b8b4fa4c9d70 *R/oddeven.R
2729 1d016a924dd59daa78ea62d986da2929 *R/permute.R
28 576dc3d2738e3eeedbce8e9f5d5765a1 *R/quantcut.R
30 d01a487fce38a8d7ecd8949767c56f81 *R/quantcut.R
31 5a3ee0e3dfa4eb4cae1737af02cf8c6f *R/roman2int.R
2932 02390191f23321a34fcfc41719d66dc6 *R/running.R
3033 a5ea32bab219fd7c634f034dddada96b *R/scat.R
3134 e5ddc84d8a502feed32f7f6b1b5e25ab *R/setTCPNoDelay.R
32 f6c7ff23b703889d580383ea3e7205d8 *R/smartbind.R
35 9633d96613b34ba3539dc2f9cb038af3 *R/smartbind.R
3336 ef22fb4007dec9fb62eb5ed947292fa3 *R/stars.pval.R
34 e8f510e73bd2cd820c384c00d75b0080 *R/strmacro.R
35 d2d2d0444a049d74694203974624835c *data/ELISA.rda
36 8ce65e8748f62a15a845d463ef9dc4ce *inst/ChangeLog
37 4b56bef437760c3635aaf7a0b28b33c7 *inst/NEWS
38 05087d9c7f92db0ac048dec226e7bc3a *man/ASCIIfy.Rd
37 bbc04a8581924855fb4107a90811fa52 *R/strmacro.R
38 e302b31547caf90872346ee1f0867e1f *R/trimws.R
39 8e36d638d9b5c0c03d6f78235d07df96 *R/unByteCode.R
40 acc7c743e7b54a541d54b8c7af52043e *data/ELISA.rda
41 4b0aeb3913d411a5e1e6127d40dd770d *inst/ChangeLog
42 b92b360a7ff045e56efb600e1b5d3932 *inst/NEWS
43 e45b4855b4a81e953876cbec7cd1b588 *man/ASCIIfy.Rd
3944 904304f52b08ec847904ac2aa5be9aef *man/ELISA.Rd
45 b2eac3f299f642616aa71dc03f1352f0 *man/asc.Rd
4046 c5b7124f5fdbcc83f2e283314df95858 *man/ask.Rd
4147 ecbe8481bdcff0d8abd1a47cc64ca7b2 *man/binsearch.Rd
4248 e1a3f01f01db3e883397eaa49037af6f *man/checkRVersion.Rd
5258 67b9c146bd8470b1dd5ddcac782c2071 *man/lastAdd.Rd
5359 8ab31f5f313c145e05601fd8afc7b59b *man/loadedPackages.Rd
5460 3c207d731ad8ead62af138afe2e20c5f *man/logit.Rd
55 422c16f570c15590fa83e1a71506757f *man/mixedsort.Rd
61 74e953706b708ad96dfde10268feaafa *man/mixedsort.Rd
5662 8d5842217510c21d95fb697caee3e6c6 *man/na.replace.Rd
5763 f4d6f8222b9448ef039d9cbf582ee29e *man/oddeven.Rd
5864 f911c6c34412df66c1ff0d6376f46c3f *man/permute.Rd
59 30ac79ee93340f4174ddf91022154c0c *man/quantcut.Rd
65 f417491b0b09a309c23f27f97af4dd5f *man/quantcut.Rd
66 90873b9cb32a59aaaf62cbc5b302e82b *man/roman2int.Rd
6067 20033253beddc01faf5829cdf43f01fb *man/running.Rd
6168 f781e22f646cf803a7f24129525521fc *man/scat.Rd
6269 5dae46a9758c2a81d25d87881f7b42ee *man/setTCPNoDelay.Rd
6370 ece07b78ccb279ab1f88a836c6a0378d *man/smartbind.Rd
6471 7ba286fa2b1bc994de1c6ec78883cdc8 *man/stars.pval.Rd
72 b726be2eb3bedb0e2f6a4d4e878eef8d *man/unByteCode.Rd
6573 8d4158b8eb92153e2d3f581682b2a3c1 *src/Makevars.win
74 ca5f00b573fc8591602b6378746e2eee *src/roman2int.c
6675 bb28a3858ac5a6152565d3b8cef8c70c *src/setTCPNoDelay.c
6776 6c36d5eac8884ab13c200c1113cf9236 *tests/smartbind_Dates.R
6877 b859dff6a12425f4ba692dc7706e99ed *tests/test_binsearch.R
78 b4b7e4ed52ac89a56e2125620e524c4a *tests/test_ddirichlet.R
6979 33c5986481c62f046106b02abc4d0c74 *tests/test_mixedorder.R
11
22 export(
33 addLast,
4 asc,
5 ASCIIfy,
46 ask,
57 assert,
6 ASCIIfy,
8 assignEdgewise,
79 binsearch,
810 capture,
11 chr,
912 checkRVersion,
1013 combinations,
1114 ddirichlet,
2932 permute,
3033 quantcut,
3134 rdirichlet,
35 roman2int,
3236 running,
3337 scat,
3438 setTCPNoDelay,
3539 smartbind,
3640 sprint,
3741 stars.pval,
38 strmacro
42 strmacro,
43 unByteCode,
44 unByteCodeAssign
3945 )
0 gtools 3.5.0 - 2015-04-28
1 -------------------------
2
3 New Functions:
4
5 - New roman2int() functon to convert roman numerals to integers
6 without the range restriction of utils::as.roman().
7
8 - New asc() and chr() functions to convert between ASCII codes and
9 characters. (Based on the 'Data Debrief' blog entry for 2011-03-09
10 at http://datadebrief.blogspot.com/2011/03/ascii-code-table-in-r.html).
11
12 - New unByteCode() and unByteCodeAssign() functions to convert a
13 byte-code functon to an interpeted code function.
14
15 - New assignEdgewise() function for making assignments into locked
16 environments. (Used by unByteCodeAssign().)
17
18 Enhacements:
19
20 - mixedsort() and mixedorder() now have arguments 'decreasing',
21 'na.last', and 'blank.last' arguments to control sort ordering.
22
23 - mixedsort() and mixedirdeR() now support Roman numerals via the
24 arguments 'numeric.type', and 'roman.case'. (Request by David
25 Winsemius, suggested code changes by Henrik Bengtsson.)
26
27 - speed up mixedorder() (and hence mixedsort()) by moving
28 suppressWarnings() outside of lapply loops. (Suggestion by Henrik
29 Bengtsson.)
30
31 - The 'q' argument to quantcut() now accept an integer
32 indicating the number of equally spaced quantile groups to
33 create. (Suggestion and patch submitted by Ryan C. Thompson.)
34
35 Bug fixes:
36
37 - Removed stray browser() call in smartbind().
38
39 - ddirichlet(x, alpha) was incorrectly returning NA when for any i,
40 x[i]=0 and alpha[i]=1. (Bug report by John Nolan.)
41
42 Other changes:
43
44 - Correct typographical errors in package description.
45
46
047 gtools 3.4.2 - 2015-04-06
148 -------------------------
249
0 asc <- function(char, simplify=TRUE)
1 sapply(char, function(x) strtoi(charToRaw(x),16L), simplify=simplify )
2
3 chr <- function(ascii) sapply(ascii, function(x) rawToChar(as.raw(x)) )
0 packagefile="gdata_2.16.0.tar.gz"
1 destdir=tempdir()
2
3 checkReverseDependencies <- function(packagefile, destdir=tempdir(), cleanup=FALSE )
4 {
5 if(!file.exists(packagefile))
6 stop(packagefile, " does not exist!")
7
8 cat("Using directory '", destdir, "'. Remember to delete it when done.\n", sep='')
9
10 file.copy(packagefile, destdir)
11
12 package <- gsub("_.*$", "", packagefile)
13
14 rdeps <- tools::package_dependencies(package, db=available.packages(), reverse = TRUE)[[1]]
15 cat( length(rdeps), "reverse dependencies:\n")
16 print(rdeps)
17
18 tools::check_packages_in_dir(destdir, reverse=list(), Ncpus=6)
19
20 if(cleanup) unlink(destdir, recursive=TRUE, force=TRUE)
21 }
0 # $Id: dirichlet.R 625 2005-06-09 14:20:30Z nj7w $
0 # $Id: dirichlet.R 2020 2015-05-23 22:12:57Z warnes $
11
22 # Posted by Ben Bolker to R-News on Fri Dec 15 2000
33 # http://www.r-project.org/nocvs/mail/r-help/2000/3865.html
2828 dirichlet1 <- function(x, alpha)
2929 {
3030 logD <- sum(lgamma(alpha)) - lgamma(sum(alpha))
31 s<-sum((alpha-1)*log(x))
31 s <-(alpha-1)*log(x)
32 s <- ifelse(alpha==1 & x==0, -Inf, s)
3233 exp(sum(s)-logD)
33
3434 }
3535
3636 # make sure x is a matrix
77 }
88 else
99 {
10
11 ## Local copy of trim.character to avoid cyclic dependency with gdata ##
12 trim <- function(s)
13 {
14 s <- sub(pattern="^[[:blank:]]+", replacement="", x=s)
15 s <- sub(pattern="[[:blank:]]+$", replacement="", x=s)
16 s
17 }
18
1910 kw <- scan(file=file, what=character(), sep="\n", quiet=TRUE)
2011 kw <- grep("&", kw, value=TRUE)
2112 kw <- gsub("&[^&]*$","", kw)
2213 kw <- gsub("&+"," ", kw)
23 kw <- na.omit(trim(kw))
14 kw <- na.omit(trimws(kw))
2415
2516 ischar <- tryCatch(is.character(topic) && length(topic) ==
2617 1L, error = identity)
0 # $Id: mixedsort.R 1774 2014-03-01 20:02:08Z warnes $
0 mixedsort <- function(x,
1 decreasing=FALSE,
2 na.last=TRUE,
3 blank.last=FALSE,
4 numeric.type=c("decimal", "roman"),
5 roman.case=c("upper","lower","both")
6 )
7 {
8 ord <- mixedorder(x,
9 decreasing=decreasing,
10 na.last=na.last,
11 blank.last=blank.last,
12 numeric.type=numeric.type,
13 roman.case=roman.case
14 )
15 x[ord]
16 }
117
2 mixedsort <- function(x) x[mixedorder(x)]
3
4 mixedorder <- function(x)
18 mixedorder <- function(x,
19 decreasing=FALSE,
20 na.last=TRUE,
21 blank.last=FALSE,
22 numeric.type=c("decimal", "roman"),
23 roman.case=c("upper","lower","both")
24 )
525 {
626 # - Split each each character string into an vector of strings and
727 # numbers
828 # - Separately rank numbers and strings
929 # - Combine orders so that strings follow numbers
1030
31 numeric.type <- match.arg(numeric.type)
32 roman.case <- match.arg(roman.case)
33
1134 if(length(x)<1)
1235 return(NULL)
1336 else if(length(x)==1)
1437 return(1)
1538
16 if( is.numeric(x) )
17 return( order(x) )
18
39 if( !is.character(x) )
40 return( order(x, decreasing=decreasing, na.last=na.last) )
1941
2042 delim="\\$\\@\\$"
2143
22 numeric <- function(x)
44 if(numeric.type=="decimal")
2345 {
24 suppressWarnings( as.numeric(x) )
46 regex <- "((?:(?i)(?:[-+]?)(?:(?=[.]?[0123456789])(?:[0123456789]*)(?:(?:[.])(?:[0123456789]{0,}))?)(?:(?:[eE])(?:(?:[-+]?)(?:[0123456789]+))|)))" # uses PERL syntax
47 numeric <- function(x) as.numeric(x)
2548 }
49 else if (numeric.type=="roman")
50 {
51 regex <- switch(roman.case,
52 "both" = "([IVXCLDMivxcldm]+)",
53 "upper" = "([IVXCLDM]+)",
54 "lower" = "([ivxcldm]+)"
55 )
56 numeric <- function(x) roman2int(x)
57 }
58 else
59 stop("Unknown value for numeric.type: ", numeric.type)
2660
2761 nonnumeric <- function(x)
2862 {
29 suppressWarnings( ifelse(is.na(as.numeric(x)), toupper(x), NA) )
63 ifelse(is.na(numeric(x)), toupper(x), NA)
3064 }
3165
3266 x <- as.character(x)
3468 which.nas <- which(is.na(x))
3569 which.blanks <- which(x=="")
3670
37 if(length(which.blanks) >0)
38 x[ which.blanks ] <- -Inf
39
40 if(length(which.nas) >0)
41 x[ which.nas ] <- Inf
42
4371 ####
4472 # - Convert each character string into an vector containing single
4573 # character and numeric values.
4674 ####
4775
4876 # find and mark numbers in the form of +1.23e+45.67
49 delimited <- gsub("([+-]{0,1}[0-9]+\\.{0,1}[0-9]*([eE][\\+\\-]{0,1}[0-9]+\\.{0,1}[0-9]*){0,1})",
50 paste(delim,"\\1",delim,sep=""), x)
77 delimited <- gsub(regex,
78 paste(delim,"\\1",delim,sep=""),
79 x,
80 perl=TRUE)
5181
5282 # separate out numbers
5383 step1 <- strsplit(delimited, delim)
5686 step1 <- lapply( step1, function(x) x[x>""] )
5787
5888 # create numeric version of data
59 step1.numeric <- lapply( step1, numeric )
89 suppressWarnings( step1.numeric <- lapply( step1, numeric ) )
6090
6191 # create non-numeric version of data
62 step1.character <- lapply( step1, nonnumeric )
92 suppressWarnings( step1.character <- lapply( step1, nonnumeric ) )
6393
6494 # now transpose so that 1st vector contains 1st element from each
6595 # original string
78108 )
79109
80110 # now order them
81 rank.numeric <- sapply(step1.numeric.t,rank)
111 rank.numeric <- sapply(step1.numeric.t, rank)
82112 rank.character <- sapply(step1.character.t,
83113 function(x) as.numeric(factor(x)))
84114
94124
95125 order.frame <- as.data.frame(rank.overall)
96126 if(length(which.nas) > 0)
97 order.frame[which.nas,] <- Inf
98 retval <- do.call("order",order.frame)
127 if(is.na(na.last))
128 order.frame[which.nas,] <- NA
129 else if(na.last)
130 order.frame[which.nas,] <- Inf
131 else
132 order.frame[which.nas,] <- -Inf
133
134 if(length(which.blanks) > 0)
135 if(is.na(blank.last))
136 order.frame[which.blanks,] <- NA
137 else if(blank.last)
138 order.frame[which.blanks,] <- 1e99
139 else
140 order.frame[which.blanks,] <- -1e99
141
142 order.frame <- as.list(order.frame)
143 order.frame$decreasing <- decreasing
144 order.frame$na.last <- NA
145
146 retval <- do.call("order", order.frame)
99147
100148 return(retval)
101149 }
102
103
0 # $Id: quantcut.R 1431 2010-04-28 17:23:08Z ggrothendieck2 $
0 # $Id: quantcut.R 1949 2015-04-23 21:47:48Z warnes $
11
2 quantcut <- function(x, q=seq(0,1,by=0.25), na.rm=TRUE, ... )
2 quantcut <- function(x, q=4, na.rm=TRUE, ... )
33 {
4 if(length(q)==1)
5 q <- seq(0,1, length.out=q+1)
6
47 quant <- quantile(x, q, na.rm=na.rm)
58 dups <- duplicated(quant)
69 if(any(dups))
0 testConvert <- function()
1 {
2 roman <- 'IVXLCDM'
3 retval <- romandigit.convert(roman)
4 stopifnot(retval==c(1,5,10,50,100,500,1000))
5 return(TRUE)
6 }
7
8 romandigit.convert <- function(roman)
9 {
10 retval <- .C('convert',
11 roman=as.character(roman),
12 nchar=as.integer(nchar(roman)),
13 values=integer(nchar(roman))
14 )
15 retval$values
16 }
17
18 roman2int.inner <- function(roman)
19 {
20 results <- .C("roman2int",
21 roman = as.character(roman),
22 nchar = as.integer(nchar(roman)),
23 value = integer(1),
24
25 PACKAGE="gtools")
26
27 return(results$value)
28 }
29
30 roman2int <- function(roman)
31 {
32 roman <- trimws(toupper(as.character(roman)))
33
34 tryIt <- function(x)
35 {
36 retval <- try(roman2int.inner(x), silent=TRUE)
37 if(is.numeric(retval))
38 retval
39 else
40 NA
41 }
42
43 retval <- sapply(roman, tryIt)
44
45 retval
46 }
47
166166
167167 if(length(colClass)>1) # not just plain factor
168168 {
169 browser()
170169 warning( "column '", col, "' of class ",
171170 paste("'", colClass, "'", collapse=":",
172171 sep="'"),
2121 {
2222 a[[i]] <- a[[i]]
2323 }
24 #if (nn[i] == "DOTS")
25 # {
26 # nn[i] <- "..."
27 # a[[i]] <- formals(function(...){})[[1]]
28 # }
2924 }
3025 names(a) <- nn
3126 a <- as.list(a)
3732 ## build replacement list
3833 reptab <- a # copy defaults first
3934 reptab$"..." <- NULL
40 #reptab$DOTS <- ""
4135
4236 args <- match.call(expand.dots=TRUE)[-1]
43 #print(args)
4437
4538 for(item in names(args))
46 ##if(item %in% names(reptab))
4739 reptab[[item]] <- args[[item]]
48 ##else
49 ## {
50 ## browser()
51 ## oldval <- reptab[["DOTS"]]
52 ## addval <- paste(item, "=", args[[item]])
53 ## if(oldval>"")
54 ## newval <- paste(c(oldval, addval), collapse=", ")
55 ## else
56 ## newval <- addval
57 ## reptab[["DOTS"]] <- newval
58 ## }
59
60 #print(reptab)
6140
6241 ## do the replacements
6342 body <- strexpr
7655 body)
7756 }
7857
79 #print(body)
80
8158 fun <- parse(text=body)
8259 eval(fun, parent.frame())
8360
0 ## trimws was added in R 2.3.0. If we're using a previous version of
1 ## R we need to define it.
2 if(!exists('trimws', mode='function'))
3 trimws <- function(s)
4 {
5 s <- sub(pattern="^[[:blank:]]+", replacement="", x=s)
6 s <- sub(pattern="[[:blank:]]+$", replacement="", x=s)
7 s
8 }
9
10
0 ## Convert a byte-compiled function to an interpreted-code function
1 unByteCode <- function(fun)
2 {
3 FUN <- eval(parse(text=deparse(fun)))
4 environment(FUN) <- environment(fun)
5 FUN
6 }
7
8 ## Replace function definition inside of a locked environment **HACK**
9 assignEdgewise <- function(name, env, value)
10 {
11 unlockBinding(name, env=env)
12 assign( name, envir=env, value=value)
13 lockBinding(name, env=env)
14 invisible(value)
15 }
16
17 ## Replace byte-compiled function in a locked environment with an
18 ## interpreted-code function
19 unByteCodeAssign <- function(fun)
20 {
21 name <- gsub('^.*::+','', deparse(substitute(fun)))
22 FUN <- unByteCode(fun)
23 retval <- assignEdgewise(name=name,
24 env=environment(FUN),
25 value=FUN
26 )
27 invisible(retval)
28 }
Binary diff not shown
0 2015-05-27 warnes
1
2 * [r2039] R/mixedsort.R, man/mixedsort.Rd: Add roman numeral
3 support to mixedorder() and mixedsort().
4 * [r2037] man/asc.Rd: Add asc() and chr() functions for converting
5 between characters and ASCII codes
6 * [r2036] R/roman2int.R: roman2int() now returns NA for invalid
7 roman numeral strings instead of generating an error.
8 * [r2035] NAMESPACE: Add asc(), chr(), assignEdgewise(),
9 unByteCode(), and
10 unByteCodeAssign() to package NAMESPACE.
11 * [r2034] R/asc.R: Add asc() and chr() functions for converting
12 between characters and ASCII codes
13
14 2015-05-26 warnes
15
16 * [r2030] inst/ChangeLog: Add changelog to svn repository
17
18 2015-05-25 warnes
19
20 * [r2029] tests/test_ddirichlet.R: Add library call.
21 * [r2028] man/unByteCode.Rd: Fix typo and add documentation for
22 argument 'name'.
23 * [r2027] man/mixedsort.Rd: Fix typo.
24 * [r2026] man/mixedsort.Rd: Add description of blanklast argument,
25 fix typo.
26 * [r2025] man/quantcut.Rd: Change usage to match actual definition.
27 * [r2024] man/mixedsort.Rd: Note characters sorting ignores case.
28 * [r2023] man/mixedsort.Rd: Remove '...' from arglist to match
29 source code.
30 * [r2022] man/mixedsort.Rd: Replace unicode quotes with \code{..}.
31
32 2015-05-23 warnes
33
34 * [r2021] tests/test_ddirichlet.R: Add regression test ddirichlet()
35 bug for x[i]=0, alpha[i]=1:
36 ddirichlet(x, alpha) was returning NA rather than 0.
37 * [r2020] R/dirichlet.R: ddirichlet() was incorrectly returning NA
38 when x[i]=0 and
39 alpha[i]=1. In this case, the one calculation became (-Inf * 0),
40 which R evaluates to NaN. The correction is to detect this case
41 and
42 substitute -Inf instead of NaN.
43
44 2015-05-08 warnes
45
46 * [r2019] R/mixedsort.R: Summary: Speed up mixedorder by moving
47 suppressWarnings outside of
48 lapply loops. (Suggestion by Henrik Bengtsson.)
49
50 2015-05-02 warnes
51
52 * [r2018] Rename 'trunk' to 'pkg' for compatibility with R-forge
53 * [r2017] Minor layout change.
54 * [r2016] Remove stray 'svn' that was inserted into the code.
55 * [r2015] Add man page for unByteCode(), assignEdgeWise(), and
56 unByteCodeAssign()
57
58 2015-04-28 warnes
59
60 * [r1976] Changes to mixedsort():
61 - Hands off objects that are not character vectors to the default
62 sort.
63 - Add 'decreasing', 'na.last', and 'blank.last' arguments.
64 * [r1975] Add private function 'checkReverseDependencies'.
65
66 2015-04-23 warnes
67
68 * [r1950] Update NEWS and ChangeLog
69 * [r1949] - The 'q' argument to quantcut()'s 'q' now accept an
70 integer
71 indicating the number of equally spaced quantile groups to
72 create. (Suggestion and patch submitted by Ryan C. Thompson.)
73 * [r1946] Revers accidental text deletion:
74 * [r1945] Update for gtools 3.4.3
75 * [r1944] Remove debugging code and stray browser() call
76
77 2015-04-14 warnes
78
79 * [r1923] Fix typo
80
081 2015-04-09 warnes
182
2 * [r1920] DESCRIPTION, NAMESPACE, R/loadedPackages.R,
3 R/na.replace.R, inst/ChangeLog, inst/NEWS, man/loadedPackages.Rd,
4 man/na.replace.Rd: Move first()/last()/left()/right() to gdata.
83 * [r1921] Update gtools ChangeLog
84 * [r1920] Move first()/last()/left()/right() to gdata.
585 Add new functions na.replace() and loadedPackages().
686 Add more text to package description.
787
888 2015-04-08 warnes
989
10 * [r1919] NAMESPACE, R/first.R, man/first.Rd, man/left.Rd: Move
11 first/last/left/right to from gtools to gdata
90 * [r1919] Move first/last/left/right to from gtools to gdata
1291
1392 2015-04-06 warnes
1493
15 * [r1918] man/dirichlet.Rd: Correct URL
16 * [r1917] inst/ChangeLog, inst/NEWS: Update NEWS and ChangeLog for
17 gtools 3.5.0
18 * [r1916] inst/ChangeLog: Add ChangeLog files to repository
19 * [r1915] R/keywords.R: Implement fix to keywords() needed for
20 R-3.4.1, as suggested by Kurt
94 * [r1918] Correct URL
95 * [r1917] Update NEWS and ChangeLog for gtools 3.5.0
96 * [r1916] Add ChangeLog files to repository
97 * [r1915] Implement fix to keywords() needed for R-3.4.1, as
98 suggested by Kurt
2199 Hornik.
22 * [r1914] NAMESPACE, R/first.R: - Export S3 methods for first(),
23 last(), left() and right().
100 * [r1914] - Export S3 methods for first(), last(), left() and
101 right().
24102 - Ensure code matches man page for first(), last(), left(), and
25103 right().
26104
27105 2014-10-09 warnes
28106
29 * [r1897] DESCRIPTION, inst/NEWS: Update for 3.5.0 release of
30 gtools
31 * [r1896] R/first.R: Make right() and left() S3 methods for classes
32 data.frame and matrix
107 * [r1897] Update for 3.5.0 release of gtools
108 * [r1896] Make right() and left() S3 methods for classes data.frame
109 and matrix
33110
34111 2014-08-27 warnes
35112
36 * [r1872] man/first.Rd: Fix man page
37 * [r1871] DESCRIPTION, NAMESPACE, R/first.R, man/first.Rd,
38 man/left.Rd: Finish adding first(), last(), left(), and right().
39 * [r1870] R/first.R: Add functions first(), last(), left(), and
40 right().
113 * [r1872] Fix man page
114 * [r1871] Finish adding first(), last(), left(), and right().
115 * [r1870] Add functions first(), last(), left(), and right().
41116
42117 2014-05-28 warnes
43118
44 * [r1816] DESCRIPTION, inst/NEWS: Update for gtools 3.4.1
45 * [r1815] tests/smartbind_Dates.R: Add test to ensure smartbind()
46 properly handles Date columns.
47 * [r1814] R/smartbind.R: smartbind: Convert non-native type columns
48 (except factor) to character.
119 * [r1816] Update for gtools 3.4.1
120 * [r1815] Add test to ensure smartbind() properly handles Date
121 columns.
122 * [r1814] smartbind: Convert non-native type columns (except
123 factor) to character.
49124
50125 2014-04-18 arnima
51126
52 * [r1813] R/ASCIIfy.R, man/ASCIIfy.Rd: Main arg is 'x' like
53 showNonASCII(x), preformatted notes instead of verb
127 * [r1813] Main arg is 'x' like showNonASCII(x), preformatted notes
128 instead of verb
54129
55130 2014-04-17 warnes
56131
57 * [r1810] man/ASCIIfy.Rd: Update ASCIIfy man page to match source
58 code and add keywords
59 * [r1809] inst/NEWS: Update NEWS for gtools 3.4.0
60 * [r1808] DESCRIPTION, NAMESPACE, R/ASCIIfy.R, man/ASCIIfy.Rd: Add
61 ASCIIfy function posted to RDevel by Arni Magnusson
132 * [r1810] Update ASCIIfy man page to match source code and add
133 keywords
134 * [r1809] Update NEWS for gtools 3.4.0
135 * [r1808] Add ASCIIfy function posted to RDevel by Arni Magnusson
62136
63137 2014-03-01 warnes
64138
65 * [r1776] tests/test_mixedorder.R: Fix cut-and-paste error.
66 * [r1775] DESCRIPTION, inst/NEWS: Update files for gtools 3.3.1
67 release
68 * [r1774] R/mixedsort.R, tests/test_mixedorder.R: Fix bug in
69 gtools::mixedorder regular expression for regognizing numbers.
70 (Periods weren't escaped).
139 * [r1776] Fix cut-and-paste error.
140 * [r1775] Update files for gtools 3.3.1 release
141 * [r1774] Fix bug in gtools::mixedorder regular expression for
142 regognizing numbers. (Periods weren't escaped).
71143
72144 2014-02-11 warnes
73145
74 * [r1773] R/clean_up_dependencies2.R: Create and use locate copy of
75 tools:::.split_op_version.
76 * [r1772] inst/NEWS: Update for gtools 3.3.0.
77 * [r1771] man/getDependencies.Rd: Fix arguments
78 * [r1770] man/getDependencies.Rd: Update arguments to match code.
79 * [r1769] DESCRIPTION, NAMESPACE, R/clean_up_dependencies2.R,
80 R/getDependencies.R, man/getDependencies.Rd: Add
81 getDependencies() function to return a list of package
82 dependencies.
146 * [r1773] Create and use locate copy of tools:::.split_op_version.
147 * [r1772] Update for gtools 3.3.0.
148 * [r1771] Fix arguments
149 * [r1770] Update arguments to match code.
150 * [r1769] Add getDependencies() function to return a list of
151 package dependencies.
83152
84153 2014-01-14 warnes
85154
86 * [r1768] DESCRIPTION, inst/NEWS: Update for bug-fix release
87 * [r1767] tests, tests/test_binsearch.R: Add test file for
88 binsearch() function.
89 * [r1766] R/binsearch.R: Fixed bug where binsearch() returned the
90 wrong endpoint & value when the found value was at the upper
91 endpoint.
155 * [r1768] Update for bug-fix release
156 * [r1767] Add test file for binsearch() function.
157 * [r1766] Fixed bug where binsearch() returned the wrong endpoint &
158 value when the found value was at the upper endpoint.
92159
93160 2014-01-13 warnes
94161
95 * [r1765] man/smartbind.Rd: Fix typo
162 * [r1765] Fix typo
96163
97164 2014-01-11 warnes
98165
99 * [r1764] inst/NEWS: Update for gtools release 3.2.0
100 * [r1763] man/gtools-defunct.Rd: fixes for R CMD check
101 * [r1762] DESCRIPTION, NAMESPACE, R/capture.R, R/defunct.R,
102 R/keywords.R, man/capture.Rd, man/gtools-defunct.Rd,
103 man/stars.pval.Rd: Fixes for gtools release 3.2.0
166 * [r1764] Update for gtools release 3.2.0
167 * [r1763] fixes for R CMD check
168 * [r1762] Fixes for gtools release 3.2.0
104169
105170 2013-12-23 warnes
106171
107 * [r1761] R/keywords.R, man/keywords.Rd: Extend the keywords()
108 function to return keywords associated with a specified topic via
109 'keywords(topic)'.
110 * [r1760] man/stars.pval.Rd: Add keyword.
111 * [r1759] NAMESPACE, R/stars.pval.R, man/stars.pval.Rd: Add
112 stars.pval() function to convert p-values into significance
113 symbols.
172 * [r1761] Extend the keywords() function to return keywords
173 associated with a specified topic via 'keywords(topic)'.
174 * [r1760] Add keyword.
175 * [r1759] Add stars.pval() function to convert p-values into
176 significance symbols.
114177
115178 2013-11-26 warnes
116179
117 * [r1748] R/mixedsort.R: mixedorder() was failing to correctly
118 handle numbers including
180 * [r1748] mixedorder() was failing to correctly handle numbers
181 including
119182 decimals due to a faulty regular expression. Prior to the fix:
120183
121184 > drr
136199
137200 2013-11-18 warnes
138201
139 * [r1747] R/capture.R: Use ".Deprecated" instead of warning.
202 * [r1747] Use ".Deprecated" instead of warning.
140203
141204 2013-11-06 warnes
142205
143 * [r1746] DESCRIPTION, inst/NEWS: Update files for gtools 3.1.1
144 * [r1745] R/mixedsort.R: Fix problem with mixedorder/mixedsort when
145 there is only zero or one elements in the vector.
206 * [r1746] Update files for gtools 3.1.1
207 * [r1745] Fix problem with mixedorder/mixedsort when there is only
208 zero or one elements in the vector.
146209
147210 2013-09-23 warnes
148211
149 * [r1716] man/gtools-deprecated.Rd: Comment out empty sections in
150 gtools-deprecated.Rd
151 * [r1715] DESCRIPTION, inst/NEWS: Update files for gtools 3.1.0
212 * [r1716] Comment out empty sections in gtools-deprecated.Rd
213 * [r1715] Update files for gtools 3.1.0 release
214 * [r1714] Make 'addLast()' defunct.
215 * [r1713] Mark 'addLast()' as defunct and move 'lastAdd()' function
216 to a separate file.
217 * [r1712] Update for gtools 3.0.1 release
218 * [r1711] Use 'suppressWarnings() instead of 'options(warn=-1)' in
219 'mixedorder()'.
220
221 2013-07-07 warnes
222
223 * [r1705] Fix typo.
224
225 2013-07-06 warnes
226
227 * [r1704] Fix Rd warning.
228 * [r1703] Include lastAdd in NAMESPACE
229 * [r1702] Change assert from deprecated to defunct.
230 * [r1701] Improve deprecation message
231 * [r1700] Update for gtools 3.0.0
232 * [r1699] Create new function lastAdd to replace addLast and mark
233 addLast as deprecated.
234
235 2013-07-05 warnes
236
237 * [r1698] Point out that addLast() modifies the value of .Last in
238 the global environment.
239 * [r1697] Point out that addLast() modifies the value of .Last in
240 the global environment.
241 * [r1696] Update for gtools 2.7.2 mark 2
242 * [r1695] Remove cross-reference to (obsolete?) moc package
243 * [r1694] Update for gtools 2.7.2
244 * [r1693] Update for R version 3.0.0 and later
245
246 2013-03-17 warnes
247
248 * [r1640] Fix error in smartbind: factor levels were not being
249 handled if the factor column was not present in the first data
250 frame.
251
252 2012-06-19 warnes
253
254 * [r1570] Update for gtools 2.7.0.
255 * [r1569] Document new 'verbose' argument to smartbind().
256 * [r1568] Clean up R CMD check warnings.
257
258 2012-05-04 warnes
259
260 * [r1529] smartbind(): Improve handling of factors and ordered
261 factors.
262
263 2011-10-05 warnes
264
265 * [r1518] Update version number for release
266 * [r1517] Add 'sep' argument to smartbind() to allow specification
267 of character used to separate components of constructed names
268
269 2011-09-28 warnes
270
271 * [r1513] smartbind(): Prevent coersion to data frame from mangling
272 column names.
273 * [r1512] Add 'fill' argument to smartbind() to specify a value to
274 use for
275 missing entries.
276 * [r1511] Add 'fill' argument to smartbind() to specify a value to
277 use for
278 missing entries.
279
280 2010-08-14 warnes
281
282 * [r1451] Modify mixedorder()/mixedsort() to better handle strings
283 containing multiple periods, like version numbers (e.g 1.1.2,
284 1.2.1. 1.1.1.1).
285
286 2010-05-01 warnes
287
288 * [r1434] Update version number for new release
289 * [r1433] Change Greg's email address to greg@warnes.net
290 * [r1432] Fix error in checkRVersion()
291
292 2010-04-28 ggrothendieck2
293
294 * [r1431] fixed problems with R CMD CHECK
295
296 2009-05-09 warnes
297
298 * [r1328] Escape $ in .Rd file to avoid latex issues
299 * [r1327] Update NEWS and create softlinks for NEWS and ChangeLog
300 in top level directory
301 * [r1326] Move actual NEWS file into inst.
302 * [r1325] Update Greg's email address and fix Rd syntax errors
303
304 2009-02-16 warnes
305
306 * [r1313] Correct windows make flags as suggested by Brian Ripley.
307
308 2008-08-15 warnes
309
310 * [r1303] Add keywords() function to show /doc/KEYWORDS file
311
312 2008-05-29 warnes
313
314 * [r1285] Add newVersionAvailable() function to compare running and
315 latest available R versions
316
317 2008-05-26 warnes
318
319 * [r1284] Update license specification
320 * [r1283] Remove 'assert' man page
321
322 2008-05-22 warnes
323
324 * [r1282] Finish rename of assert.R to assert-depricated.Rd
325 * [r1281] Add checkRVersion.R file
326 * [r1280] Rename again to get correct extension!
327 * [r1279] Update NEWS for 2.5.0
328 * [r1278] Add man page for checkRVersion
329 * [r1277] Rename assert-deprecated.R to assert.R to meet R file
330 name requirements.
331 * [r1276] Add checkRVersion to NAMESPACE, and increment version in
332 DESCRIPTION.
333 * [r1275] Remove broken SEE LSO reference
334
335 2008-04-12 warnes
336
337 * [r1259] Improve text explanation of how defmacro() and strmacro()
338 differ from
339 function().
340 * [r1258] assert() is now deprecated in favor of base::stopifnot()
341 * [r1257] Rename 'assert.R' to 'deprecated.R'.
342 * [r1256] Assert is now deprecated in favor of base::stopifnot(),
343 so add call to
344 .Deprecated() to inform the user.
345
346 2007-11-30 warnes
347
348 * [r1228] Update defnitions of odd() and even() to use modulus
349 operator instead of division. Prettier, I think, :-D
350
351 2007-08-08 warnes
352
353 * [r1121] Fix bug identified by R-2.6's check routings in
354 binsearch()
355 * [r1120] Add the binsearch(), previously in the genetics package.
356
357 2007-07-18 ggorjan
358
359 * [r1100] typo fixed
360
361 2007-04-12 warnes
362
363 * [r1088] Add ask() function to prompt the user and collect a
364 single response.
365
366 2007-04-07 warnes
367
368 * [r1087] Fix improper escapes in regexp detected by R 2.5.0
369 package check.
370
371 2007-03-23 warnes
372
373 * [r1083] Allow permutations for r>n provided repeats.allowed=TRUE
374
375 2006-11-28 warnes
376
377 * [r1023] Replace F with FALSE in smartbind example.
378
379 2006-11-27 warnes
380
381 * [r1022] Replace T with TRUE in smartbind example
382 * [r1021] Temprary remove to reset binary flag
383 * [r1020] Temprary remove to reset binary flag
384 * [r1019] Add smartbind() to list of exported functions, and add
385 corresponding
386 documentation file.
387 * [r1018] Update my email address
388
389 2006-11-14 ggorjan
390
391 * [r1012] Removed executable property
392
393 2006-08-02 warnes
394
395 * [r977] Update my email address
396
397 2006-05-05 nj7w
398
399 * [r958] Fixed minor typo - in {value} - n was replaced by r
400 * [r957] Fixed minor typos
401
402 2006-03-01 warnes
403
404 * [r903] Add smartbind function
405
406 2006-01-18 warnes
407
408 * [r845] Add concept tags to make mixedsort easier to locate.
409
410 2005-12-21 warnes
411
412 * [r837] Update version number and date
413 * [r836] Note changes for 2.2.3
414 * [r835] Should now work on Windows
415
416 2005-12-20 warnes
417
418 * [r834] Temporary fix to allow setTCPNoDelay.c to compile on
419 Windows. If compiled on windows calling setTCPNoDelay will just
420 raise an error.
421
422 2005-12-14 warnes
423
424 * [r813] Change C++ comment to standard comment
425
426 2005-12-13 nj7w
427
428 * [r810] *** empty log message ***
429 * [r809] Updated NEWS and removed ChangeLog
430
431 2005-12-12 nj7w
432
433 * [r800] Updated version for CRAN release
434
435 2005-12-08 warnes
436
437 * [r790] Add C source code for setTCPNoDelay.
438
439 2005-12-01 nj7w
440
441 * [r776] Updated Greg's email address
442
443 2005-11-29 warnes
444
445 * [r769] Add UseDynLib to NAMESPACE so the shared library gets
446 properly loaded.
447 * [r768] - Remove debugging comments
448 - Change return value on success to "Success".
449
450 2005-11-22 warnes
451
452 * [r758] NAMESPACE
453 * [r757] Update news for 2.2.1 release.
454 * [r756] Fixes for R CMD check
455 * [r755] Add setTCPNoDelay() function and documentation
456 * [r745] New function 'addLast' that adds functions to R's .Last()
457 so that
458 they will be executed when R is terminating.
459
460 2005-09-22 warnes
461
462 * [r678] More changes for strmacro(), also changes for 2.1.1
152463 release
153 * [r1714] man/addLast-deprecated.Rd, man/gtools-defunct.Rd,
154 man/gtools-deprecated.Rd, man/lastAdd.Rd: Make 'addLast()'
155 defunct.
156 * [r1713] R/addLast.R, R/lastAdd.R: Mark 'addLast()' as defunct and
157 move 'lastAdd()' function to a separate file.
158 * [r1712] DESCRIPTION, inst/NEWS: Update for gtools 3.0.1 release
159 * [r1711] R/mixedsort.R: Use 'suppressWarnings() instead of
160 'options(warn=-1)' in 'mixedorder()'.
161
162 2013-07-07 warnes
163
164 * [r1705] man/lastAdd.Rd: Fix typo.
165
166 2013-07-06 warnes
167
168 * [r1704] man/lastAdd.Rd: Fix Rd warning.
169 * [r1703] NAMESPACE: Include lastAdd in NAMESPACE
170 * [r1702] R/deprecated.R: Change assert from deprecated to defunct.
171 * [r1701] R/addLast.R: Improve deprecation message
172 * [r1700] DESCRIPTION, inst/NEWS: Update for gtools 3.0.0
173 * [r1699] R/addLast.R, man/addLast-deprecated.Rd, man/addLast.Rd,
174 man/gtools-defunct.Rd, man/gtools-deprecated.Rd, man/lastAdd.Rd:
175 Create new function lastAdd to replace addLast and mark addLast
176 as deprecated.
177
178 2013-07-05 warnes
179
180 * [r1698] inst/NEWS: Point out that addLast() modifies the value of
181 .Last in the global environment.
182 * [r1697] man/addLast.Rd: Point out that addLast() modifies the
183 value of .Last in the global environment.
184 * [r1696] DESCRIPTION, inst/NEWS: Update for gtools 2.7.2 mark 2
185 * [r1695] man/logit.Rd: Remove cross-reference to (obsolete?) moc
186 package
187 * [r1694] DESCRIPTION, inst/NEWS: Update for gtools 2.7.2
188 * [r1693] R/checkRVersion.R: Update for R version 3.0.0 and later
189
190 2013-03-17 warnes
191
192 * [r1640] R/smartbind.R: Fix error in smartbind: factor levels were
193 not being handled if the factor column was not present in the
194 first data frame.
195
196 2012-06-19 warnes
197
198 * [r1570] DESCRIPTION, inst/NEWS: Update for gtools 2.7.0.
199 * [r1569] man/smartbind.Rd: Document new 'verbose' argument to
200 smartbind().
201 * [r1568] R/addLast.R, R/running.R: Clean up R CMD check warnings.
202
203 2012-05-04 warnes
204
205 * [r1529] R/smartbind.R: smartbind(): Improve handling of factors
206 and ordered factors.
207
208 2011-10-05 warnes
209
210 * [r1518] DESCRIPTION: Update version number for release
211 * [r1517] R/smartbind.R, man/smartbind.Rd: Add 'sep' argument to
212 smartbind() to allow specification of character used to separate
213 components of constructed names
214
215 2011-09-28 warnes
216
217 * [r1513] R/smartbind.R: smartbind(): Prevent coersion to data
218 frame from mangling column names.
219 * [r1512] R/smartbind.R, inst/NEWS: Add 'fill' argument to
220 smartbind() to specify a value to use for
221 missing entries.
222 * [r1511] DESCRIPTION, man/smartbind.Rd: Add 'fill' argument to
223 smartbind() to specify a value to use for
224 missing entries.
225
226 2010-08-14 warnes
227
228 * [r1451] R/mixedsort.R: Modify mixedorder()/mixedsort() to better
229 handle strings containing multiple periods, like version numbers
230 (e.g 1.1.2, 1.2.1. 1.1.1.1).
231
232 2010-05-01 warnes
233
234 * [r1434] DESCRIPTION: Update version number for new release
235 * [r1433] DESCRIPTION, man/addLast.Rd, man/ask.Rd,
236 man/binsearch.Rd, man/capture.Rd, man/combinations.Rd,
237 man/defmacro.Rd, man/dirichlet.Rd, man/foldchange.Rd,
238 man/invalid.Rd, man/keywords.Rd, man/logit.Rd, man/mixedsort.Rd,
239 man/oddeven.Rd, man/permute.Rd, man/quantcut.Rd, man/running.Rd,
240 man/scat.Rd, man/setTCPNoDelay.Rd, man/smartbind.Rd: Change
241 Greg's email address to greg@warnes.net
242 * [r1432] R/checkRVersion.R: Fix error in checkRVersion()
243
244 2010-04-28 ggrothendieck2
245
246 * [r1431] R/quantcut.R, R/strmacro.R, man/binsearch.Rd,
247 man/capture.Rd, man/setTCPNoDelay.Rd: fixed problems with R CMD
248 CHECK
249
250 2009-05-09 warnes
251
252 * [r1328] man/keywords.Rd: Escape $ in .Rd file to avoid latex
253 issues
254 * [r1327] ChangeLog, NEWS, inst/NEWS: Update NEWS and create
255 softlinks for NEWS and ChangeLog in top level directory
256 * [r1326] NEWS, inst, inst/NEWS: Move actual NEWS file into inst.
257 * [r1325] DESCRIPTION, man/addLast.Rd, man/binsearch.Rd,
258 man/capture.Rd, man/combinations.Rd, man/defmacro.Rd,
259 man/dirichlet.Rd, man/foldchange.Rd, man/gtools-deprecated.Rd,
260 man/invalid.Rd, man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd,
261 man/permute.Rd, man/quantcut.Rd, man/running.Rd, man/scat.Rd,
262 man/setTCPNoDelay.Rd, man/smartbind.Rd: Update Greg's email
263 address and fix Rd syntax errors
264
265 2009-02-16 warnes
266
267 * [r1313] src/Makevars.win: Correct windows make flags as suggested
268 by Brian Ripley.
269
270 2008-08-15 warnes
271
272 * [r1303] DESCRIPTION, NAMESPACE, R/keywords.R, man/keywords.Rd:
273 Add keywords() function to show /doc/KEYWORDS file
274
275 2008-05-29 warnes
276
277 * [r1285] R/newVersionAvailable.R: Add newVersionAvailable()
278 function to compare running and latest available R versions
279
280 2008-05-26 warnes
281
282 * [r1284] DESCRIPTION: Update license specification
283 * [r1283] man/assert-deprecated.Rd: Remove 'assert' man page
284
285 2008-05-22 warnes
286
287 * [r1282] man/assert.R: Finish rename of assert.R to
288 assert-depricated.Rd
289 * [r1281] R/checkRVersion.R: Add checkRVersion.R file
290 * [r1280] man/assert-deprecated.Rd: Rename again to get correct
291 extension!
292 * [r1279] NEWS: Update NEWS for 2.5.0
293 * [r1278] man/checkRVersion.Rd: Add man page for checkRVersion
294 * [r1277] man/assert-deprecated.R, man/assert.R: Rename
295 assert-deprecated.R to assert.R to meet R file name requirements.
296 * [r1276] DESCRIPTION, NAMESPACE: Add checkRVersion to NAMESPACE,
297 and increment version in DESCRIPTION.
298 * [r1275] man/gtools-deprecated.Rd: Remove broken SEE LSO reference
299
300 2008-04-12 warnes
301
302 * [r1259] man/defmacro.Rd: Improve text explanation of how
303 defmacro() and strmacro() differ from
304 function().
305 * [r1258] NEWS, man/assert-deprecated.R, man/assert.Rd,
306 man/gtools-deprecated.Rd: assert() is now deprecated in favor of
307 base::stopifnot()
308 * [r1257] R/assert.R, R/deprecated.R: Rename 'assert.R' to
309 'deprecated.R'.
310 * [r1256] R/assert.R: Assert is now deprecated in favor of
311 base::stopifnot(), so add call to
312 .Deprecated() to inform the user.
313
314 2007-11-30 warnes
315
316 * [r1228] R/oddeven.R: Update defnitions of odd() and even() to use
317 modulus operator instead of division. Prettier, I think, :-D
318
319 2007-08-08 warnes
320
321 * [r1121] DESCRIPTION, R/binsearch.R: Fix bug identified by R-2.6's
322 check routings in binsearch()
323 * [r1120] DESCRIPTION, NAMESPACE, NEWS, R/binsearch.R,
324 man/binsearch.Rd: Add the binsearch(), previously in the genetics
325 package.
326
327 2007-07-18 ggorjan
328
329 * [r1100] man/combinations.Rd: typo fixed
330
331 2007-04-12 warnes
332
333 * [r1088] NAMESPACE, NEWS, R/ask.R, man/ask.Rd: Add ask() function
334 to prompt the user and collect a single response.
335
336 2007-04-07 warnes
337
338 * [r1087] DESCRIPTION, R/mixedsort.R: Fix improper escapes in
339 regexp detected by R 2.5.0 package check.
340
341 2007-03-23 warnes
342
343 * [r1083] R/combinations.R: Allow permutations for r>n provided
344 repeats.allowed=TRUE
345
346 2006-11-28 warnes
347
348 * [r1023] man/smartbind.Rd: Replace F with FALSE in smartbind
349 example.
350
351 2006-11-27 warnes
352
353 * [r1022] man/smartbind.Rd: Replace T with TRUE in smartbind
354 example
355 * [r1021] data/ELISA.rda: Temprary remove to reset binary flag
356 * [r1020] data/ELISA.rda: Temprary remove to reset binary flag
357 * [r1019] DESCRIPTION, NAMESPACE, NEWS, R/smartbind.R,
358 man/smartbind.Rd: Add smartbind() to list of exported functions,
359 and add corresponding
360 documentation file.
361 * [r1018] DESCRIPTION: Update my email address
362
363 2006-11-14 ggorjan
364
365 * [r1012] R/combinations.R, R/running.R, man/ELISA.Rd,
366 man/combinations.Rd: Removed executable property
367
368 2006-08-02 warnes
369
370 * [r977] man/addLast.Rd, man/assert.Rd, man/capture.Rd,
371 man/combinations.Rd, man/defmacro.Rd, man/dirichlet.Rd,
372 man/foldchange.Rd, man/invalid.Rd, man/logit.Rd,
373 man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
374 man/quantcut.Rd, man/running.Rd, man/scat.Rd,
375 man/setTCPNoDelay.Rd: Update my email address
376
377 2006-05-05 nj7w
378
379 * [r958] man/combinations.Rd: Fixed minor typo - in {value} - n was
380 replaced by r
381 * [r957] NAMESPACE, man/capture.Rd: Fixed minor typos
382
383 2006-03-01 warnes
384
385 * [r903] R/smartbind.R: Add smartbind function
386
387 2006-01-18 warnes
388
389 * [r845] man/mixedsort.Rd: Add concept tags to make mixedsort
390 easier to locate.
391
392 2005-12-21 warnes
393
394 * [r837] DESCRIPTION: Update version number and date
395 * [r836] NEWS: Note changes for 2.2.3
396 * [r835] src/Makevars.win, src/setTCPNoDelay.c: Should now work on
397 Windows
398
399 2005-12-20 warnes
400
401 * [r834] src/setTCPNoDelay.c: Temporary fix to allow
402 setTCPNoDelay.c to compile on Windows. If compiled on windows
403 calling setTCPNoDelay will just raise an error.
404
405 2005-12-14 warnes
406
407 * [r813] src/setTCPNoDelay.c: Change C++ comment to standard
408 comment
409
410 2005-12-13 nj7w
411
412 * [r810] ChangeLog: *** empty log message ***
413 * [r809] NEWS: Updated NEWS and removed ChangeLog
414
415 2005-12-12 nj7w
416
417 * [r800] DESCRIPTION: Updated version for CRAN release
418
419 2005-12-08 warnes
420
421 * [r790] src, src/setTCPNoDelay.c: Add C source code for
422 setTCPNoDelay.
423
424 2005-12-01 nj7w
425
426 * [r776] man/combinations.Rd, man/foldchange.Rd, man/invalid.Rd,
427 man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd, man/quantcut.Rd,
428 man/running.Rd: Updated Greg's email address
429
430 2005-11-29 warnes
431
432 * [r769] NAMESPACE: Add UseDynLib to NAMESPACE so the shared
433 library gets properly loaded.
434 * [r768] R/setTCPNoDelay.R: - Remove debugging comments
435 - Change return value on success to "Success".
436
437 2005-11-22 warnes
438
439 * [r758] NAMESPACE: NAMESPACE
440 * [r757] NEWS: Update news for 2.2.1 release.
441 * [r756] man/addLast.Rd, man/setTCPNoDelay.Rd: Fixes for R CMD
442 check
443 * [r755] DESCRIPTION, NAMESPACE, R/setTCPNoDelay.R,
444 man/setTCPNoDelay.Rd: Add setTCPNoDelay() function and
445 documentation
446 * [r745] R/addLast.R, man/addLast.Rd: New function 'addLast' that
447 adds functions to R's .Last() so that
448 they will be executed when R is terminating.
449
450 2005-09-22 warnes
451
452 * [r678] DESCRIPTION, NAMESPACE, man/defmacro.Rd: More changes for
453 strmacro(), also changes for 2.1.1 release
454 * [r677] R/defmacro.R, R/strmacro.R, man/defmacro.Rd: Add strmaco()
455 which defines functions that use strings for macro definition
464 * [r677] Add strmaco() which defines functions that use strings for
465 macro definition
456466
457467 2005-09-21 warnes
458468
459 * [r676] DESCRIPTION, R/defmacro.R, man/defmacro.Rd: Add support
460 for DOTS/... arguments to defmacro
469 * [r676] Add support for DOTS/... arguments to defmacro
461470
462471 2005-09-12 nj7w
463472
464 * [r671] man/assert.Rd, man/dirichlet.Rd, man/permute.Rd,
465 man/scat.Rd: Updated Greg's email
473 * [r671] Updated Greg's email
466474
467475 2005-09-02 nj7w
468476
469 * [r653] NAMESPACE: Exported assert
470 * [r652] DESCRIPTION: Updated the version number
471 * [r651] NEWS: Added NEWS
472 * [r650] ChangeLog: Added ChangeLog
473 * [r649] man/assert.Rd: Fixed syntax errors
477 * [r653] Exported assert
478 * [r652] Updated the version number
479 * [r651] Added NEWS
480 * [r650] Added ChangeLog
481 * [r649] Fixed syntax errors
474482
475483 2005-09-02 warnes
476484
477 * [r648] R/assert.R, man/assert.Rd: Add assert() and documentation
478 * [r647] man/defmacro.Rd: Fix problem in defmacro.Rd file: don't
479 use \code{} in the example section.
485 * [r648] Add assert() and documentation
486 * [r647] Fix problem in defmacro.Rd file: don't use \code{} in the
487 example section.
480488
481489 2005-08-31 warnes
482490
483 * [r645] DESCRIPTION, NAMESPACE, R/defmacro.R, man/defmacro.Rd:
484 Adding the defmacro() function, extracted from
491 * [r645] Adding the defmacro() function, extracted from
485492
486493 Lumley T. "Programmer's Niche: Macros in {R}", R News, 2001, Vol
487494 1,
488495 No. 3, pp 11--13, \url{http://CRAN.R-project.org/doc/Rnews/}
489 * [r642] DESCRIPTION, DESCRIPTION.in: Add stand-alone DESCRIPTION
490 file and remove old DESCRIPTION.in file.
496 * [r642] Add stand-alone DESCRIPTION file and remove old
497 DESCRIPTION.in file.
491498
492499 2005-06-13 nj7w
493500
494 * [r626] R/mixedsort.R: Fixed a bug in mixedsort - check if
495 "which.na" and "which.blank" is numeric(0) before subsetting the
496 datasets.
501 * [r626] Fixed a bug in mixedsort - check if "which.na" and
502 "which.blank" is numeric(0) before subsetting the datasets.
497503
498504 2005-06-09 nj7w
499505
500 * [r625] R/RSCompat.S, R/combinations.R, R/dirichlet.R,
501 R/foldchange.R, R/invalid.R, R/logit.R, R/mixedsort.R,
502 R/oddeven.R, R/permute.R, R/quantcut.R, R/running.R, R/scat.R,
503 man/ELISA.Rd, man/combinations.Rd, man/dirichlet.Rd,
504 man/foldchange.Rd, man/invalid.Rd, man/logit.Rd,
505 man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
506 man/quantcut.Rd, man/running.Rd, man/scat.Rd: Updating the
507 version number, and various help files to synchronize splitting
508 of gregmisc bundle in 4 individual components.
506 * [r625] Updating the version number, and various help files to
507 synchronize splitting of gregmisc bundle in 4 individual
508 components.
509509
510510 2005-05-10 warnes
511511
512 * [r619] R/mixedsort.R: Fix handling of NA's in mixedorder. We were
513 using a high UTF character to try
512 * [r619] Fix handling of NA's in mixedorder. We were using a high
513 UTF character to try
514514 to put NA's at the end of the sort order, but R 2.1.0 checks if
515515 characters
516516 are in the correct range. Instead, we explicitly force NA's to
518518
519519 2005-04-07 warnes
520520
521 * [r606] NAMESPACE, R/scat.R, man/scat.Rd: - Add scat() function
522 which writes its arguments to stderr and
521 * [r606] - Add scat() function which writes its arguments to stderr
522 and
523523 flushes so that output is immediately displayed, but only if
524524 'getOption("DEBUG")' is true.
525525
526526 2005-04-02 warnes
527527
528 * [r600] NAMESPACE, R/drop.levels.R, man/drop.levels.Rd: Move
529 drop.levels() from gtools to gdata.
530 * [r599] R/mixedsort.R: Minor reordering of functions in file
531 * [r598] NAMESPACE, R/frameApply.R, man/frameApply.Rd: Move
532 frameApply() to gdata package.
533 * [r597] R/mixedsort.R: Fix error if only one value passed to
534 mixedorder.
535 * [r596] R/quantcut.R, man/quantcut.Rd: Add proper handling where
536 more than one quantile obtains the same value
528 * [r600] Move drop.levels() from gtools to gdata.
529 * [r599] Minor reordering of functions in file
530 * [r598] Move frameApply() to gdata package.
531 * [r597] Fix error if only one value passed to mixedorder.
532 * [r596] Add proper handling where more than one quantile obtains
533 the same value
537534
538535 2005-04-01 warnes
539536
540 * [r595] man/ELISA.Rd, man/combinations.Rd, man/dirichlet.Rd,
541 man/drop.levels.Rd, man/foldchange.Rd, man/invalid.Rd,
542 man/logit.Rd, man/mixedsort.Rd, man/oddeven.Rd, man/permute.Rd,
543 man/quantcut.Rd, man/running.Rd: Add CVS ID tag to file headers.
544 * [r594] R/frameApply.R, man/frameApply.Rd: Fixes from Jim Rogers
545 for R CMD check problems in frameApply
537 * [r595] Add CVS ID tag to file headers.
538 * [r594] Fixes from Jim Rogers for R CMD check problems in
539 frameApply
546540
547541 2005-03-31 warnes
548542
549 * [r591] R/drop.levels.R, R/frameApply.R, man/drop.levels.Rd,
550 man/frameApply.Rd: Updates to drop.levels() and frameApply() from
551 Jim Rogers
552 * [r590] data, data/ELISA.rda, man/ELISA.Rd: Add ELISA data set
553 used by frameApply and drop.levels examples
543 * [r591] Updates to drop.levels() and frameApply() from Jim Rogers
544 * [r590] Add ELISA data set used by frameApply and drop.levels
545 examples
554546
555547 2005-02-25 warnes
556548
557 * [r562] man/frameApply.Rd: Replace 'T' with TRUE.
558 * [r561] man/frameApply.Rd: Remove dependency on ELISA data set for
559 the example.
560 * [r558] NAMESPACE: Add drop.levels, frameApply to namespace
561 export.
549 * [r562] Replace 'T' with TRUE.
550 * [r561] Remove dependency on ELISA data set for the example.
551 * [r558] Add drop.levels, frameApply to namespace export.
562552
563553 2005-02-15 warnes
564554
565 * [r542] R/drop.levels.R, R/frameApply.R, man/drop.levels.Rd,
566 man/frameApply.Rd: Add frameApply and drop.levels contributed by
567 Jim Rogers.
555 * [r542] Add frameApply and drop.levels contributed by Jim Rogers.
568556
569557 2005-01-12 warnes
570558
571 * [r515] DESCRIPTION.in: Add dependency on R 1.9.0+ to prevent
572 poeple from installing on old
559 * [r515] Add dependency on R 1.9.0+ to prevent poeple from
560 installing on old
573561 versions of R which don't support namespaces.
574562
575563 2004-09-27 warneg
576564
577 * [r461] DESCRIPTION, DESCRIPTION.in, man/running.Rd: Updated to
578 pass R CMD check.
565 * [r461] Updated to pass R CMD check.
579566
580567 2004-09-03 warneg
581568
582 * [r446] DESCRIPTION, NAMESPACE, R/dirichlet.R, R/foldchange.R,
583 R/invalid.R, R/mixedsort.R, R/oddeven.R, R/permute.R,
584 R/quantcut.R, R/running.R, man/running.Rd: initial bundle checkin
569 * [r446] initial bundle checkin
585570
586571 2004-09-02 warneg
587572
588 * [r442] DESCRIPTION, DESCRIPTION.in, NAMESPACE: Initial revision
573 * [r442] Initial revision
589574
590575 2004-08-27 warnes
591576
592 * [r441] R/mixedsort.R, man/mixedsort.Rd: Fixed bug in mixedsort,
593 and modified reorder.factor to use mixedsort.
577 * [r441] Fixed bug in mixedsort, and modified reorder.factor to use
578 mixedsort.
594579
595580 2004-08-26 warnes
596581
597 * [r440] R/mixedsort.R: - Fix bug pointed out by Jim Rogers.
582 * [r440] - Fix bug pointed out by Jim Rogers.
598583 - Use a more distictive internal separator: $@$ instead of just $
599584 - Capitalization is now irrelevent for search order (unlike
600585 ASCII).
601586
602587 2004-06-08 warnes
603588
604 * [r372] R/running.R, man/running.Rd: Nitin Jain added by=
605 parameter to allow specifying separation between groups.
589 * [r372] Nitin Jain added by= parameter to allow specifying
590 separation between groups.
606591
607592 2004-05-26 warnes
608593
609 * [r345] man/combinations.Rd: Escape underscores in email addresses
610 so Latex is happy.
611 * [r343] R/combinations.R: Replace 'T' with 'TRUE' to pass R CMD
612 check.
594 * [r345] Escape underscores in email addresses so Latex is happy.
595 * [r343] Replace 'T' with 'TRUE' to pass R CMD check.
613596
614597 2004-05-25 warnes
615598
616 * [r334] R/combinations.R: Remove extraneous comments.
617 * [r333] R/combinations.R: Fix an error in the code when using
618 repeats.allow=T and r>2. Bug
599 * [r334] Remove extraneous comments.
600 * [r333] Fix an error in the code when using repeats.allow=T and
601 r>2. Bug
619602 report and fix both due to Elizabeth Purdom
620603 <epurdom@stanford.edu>.
621604
622605 2004-05-24 warnes
623606
624 * [r323] R/invalid.R: Check if argument is a vector before doing
625 is.na to avoid generating a warning.
626 * [r322] R/invalid.R, man/invalid.Rd: Add invalid() function for
627 testing if a parameter value is non-missing, non-NA,
607 * [r323] Check if argument is a vector before doing is.na to avoid
608 generating a warning.
609 * [r322] Add invalid() function for testing if a parameter value is
610 non-missing, non-NA,
628611 non-NULL.
629612
630613 2004-04-27 warnes
631614
632 * [r321] R/running.R, man/running.Rd: Replaced argument `as.list'
633 with `simplify'. Updated documentation,
615 * [r321] Replaced argument `as.list' with `simplify'. Updated
616 documentation,
634617 and updated examples appropriately.
635618
636619 2004-04-26 warnes
637620
638 * [r320] R/running.R, man/running.Rd: Added as.list argument to
639 return one list element per evaluation.
621 * [r320] Added as.list argument to return one list element per
622 evaluation.
640623
641624 2004-03-26 warnes
642625
643 * [r303] man/combinations.Rd: Uncomment and fix large 'n' example.
644 * [r301] man/running.Rd: - Update to match changes in running()
626 * [r303] Uncomment and fix large 'n' example.
627 * [r301] - Update to match changes in running()
645628 - Add examples to illustrate new arguments.
646629 - Modify running correlation plot example to be more clear.
647 * [r299] R/running.R: More of the same.
648 * [r297] R/running.R: Fix bug discovered by Sean Davis
649 <sdavis2@mail.nih.gov>. The running
630 * [r299] More of the same.
631 * [r297] Fix bug discovered by Sean Davis <sdavis2@mail.nih.gov>.
632 The running
650633 function took an improper shortcut. When allow.fewer=FALSE it was
651634 still passing shorter lists of elements to the called function,
652635 and
657640
658641 2004-01-21 warnes
659642
660 * [r277] R/capture.R: - Mark sprint() as depreciated.
643 * [r277] - Mark sprint() as depreciated.
661644 - Replace references to sprint with capture.output()
662645 - Use match.arg for halign and valign arguments to
663646 textplot.default.
669652
670653 2003-12-03 warnes
671654
672 * [r253] man/foldchange.Rd: - match function argument defaults with
673 'usage'
655 * [r253] - match function argument defaults with 'usage'
674656
675657 2003-11-21 warnes
676658
677 * [r237] man/foldchange.Rd: Removed 'deqn' call that was confusing
678 things.
679 * [r234] man/logit.Rd: Add email address to author field
680 * [r233] R/foldchange.R, man/foldchange.Rd: - new files
681 * [r232] R/mixedsort.R, man/mixedsort.Rd: - Change 'T' to 'TRUE' in
682 mixedsort.R
659 * [r237] Removed 'deqn' call that was confusing things.
660 * [r234] Add email address to author field
661 * [r233] - new files
662 * [r232] - Change 'T' to 'TRUE' in mixedsort.R
683663 - Add missing brace in mixedsort.Rd
684664
685665 2003-11-20 warnes
686666
687 * [r230] R/oddeven.R, man/oddeven.Rd: - Move 'odd' and 'even'
688 functions to a separate file & provide documentation
667 * [r230] - Move 'odd' and 'even' functions to a separate file &
668 provide documentation
689669
690670 2003-11-18 warnes
691671
692 * [r227] R/mixedsort.R, man/mixedsort.Rd: - Renamed smartsort to
693 mixedsort and added documentation.
672 * [r227] - Renamed smartsort to mixedsort and added documentation.
694673
695674 2003-11-10 warnes
696675
697 * [r220] R/capture.R, man/capture.Rd: - Add files contributed by
698 Arni Magnusson
676 * [r220] - Add files contributed by Arni Magnusson
699677 <arnima@u.washington.edu>. As well as some of my own.
700678
701679 2003-05-23 warnes
702680
703 * [r196] R/logit.R, man/logit.Rd: - library() backported from
704 1.7-devel. This version of the function
681 * [r196] - library() backported from 1.7-devel. This version of the
682 function
705683 adds the "pos=" argument to specify where in the search path the
706684 library should be placed.
707685
715693
716694 2003-04-22 warnes
717695
718 * [r189] man/combinations.Rd: - Fixed tpyo in example that allowed
719 combinations(500,2) to run when
696 * [r189] - Fixed tpyo in example that allowed combinations(500,2)
697 to run when
720698 it should have been ignred for testing..
721699
722700 2003-04-10 warnes
723701
724 * [r186] man/combinations.Rd: - Added note about the need to
725 increase options("expressions") to use
702 * [r186] - Added note about the need to increase
703 options("expressions") to use
726704 large values for 'n'. Prompted by bug report from Huan Huang
727705 <huan.huang@bnpparibas.com
728706
729707 2003-04-04 warnes
730708
731 * [r183] R/RSCompat.S: - Replace 'T' with 'TRUE'
732 * [r182] R/dirichlet.R: - Change occurences of 'T' to 'TRUE'
733 * [r181] man/capture.Rd: - Allow optional arguments to sprint to be
734 passed to print
709 * [r183] - Replace 'T' with 'TRUE'
710 * [r182] - Change occurences of 'T' to 'TRUE'
711 * [r181] - Allow optional arguments to sprint to be passed to print
735712 - Fix R CMD check errors
736 * [r180] R/capture.R: - Allow optional arguments to sprint to be
737 passed to print
713 * [r180] - Allow optional arguments to sprint to be passed to print
738714
739715 2003-04-03 warnes
740716
741 * [r177] man/capture.Rd: - Had mistyped 'sprint' as 'sprintf'.
742 * [r176] man/capture.Rd: - Add help file for capture and sprintf.
717 * [r177] - Had mistyped 'sprint' as 'sprintf'.
718 * [r176] - Add help file for capture and sprintf.
743719
744720 2003-04-02 warnes
745721
746 * [r174] R/capture.R: - Added file 'capture.R' containing capture()
747 and sprint().
722 * [r174] - Added file 'capture.R' containing capture() and
723 sprint().
748724
749725 2003-03-07 warnes
750726
751 * [r168] R/RSCompat.S: - Minor changes to code to allow the package
752 to be provided as an
727 * [r168] - Minor changes to code to allow the package to be
728 provided as an
753729 S-Plus chapter.
754730
755731 2003-01-30 warnes
756732
757 * [r161] man/running.Rd: - Fixed typo in email address.
733 * [r161] - Fixed typo in email address.
758734
759735 2003-01-02 warnes
760736
761 * [r148] R/RSCompat.S: - Add nlevels function.
737 * [r148] - Add nlevels function.
762738
763739 2002-10-11 warnes
764740
765 * [r133] R/permute.R, man/permute.Rd: - Add permute() function
766 (wraper for sample) and man page
767 * [r132] man/dirichlet.Rd: - Escaped underscores in my email
768 address that was causing a parse
741 * [r133] - Add permute() function (wraper for sample) and man page
742 * [r132] - Escaped underscores in my email address that was causing
743 a parse
769744 error in the {r,p}dirichlet man page.
770745
771746 2002-09-30 warnes
772747
773 * [r128] R/dirichlet.R, man/dirichlet.Rd: - Added rdirichlet() and
774 ddirichlet() with accompaning help page and tests.
748 * [r128] - Added rdirichlet() and ddirichlet() with accompaning
749 help page and tests.
775750
776751 2002-09-24 warnes
777752
778 * [r122] R/running.R: - Fixed error where running was always
779 calling running2 with
753 * [r122] - Fixed error where running was always calling running2
754 with
780755 'fun=mean', ignoring the specified funtion.
781756
782757 2002-09-23 warnes
783758
784 * [r117] man/combinations.Rd, man/quantcut.Rd: - Modified all files
785 to include CVS Id and Log tags.
786 * [r116] R/combinations.R: - Added CrossTable() and barplot2() code
787 and docs contributed by Marc Schwartz.
759 * [r117] - Modified all files to include CVS Id and Log tags.
760 * [r116] - Added CrossTable() and barplot2() code and docs
761 contributed by Marc Schwartz.
788762 - Permit combinations() to be used when r>n provided
789763 repeat.allowed=TRUE
790764 - Bumped up version number
791765
792766 2002-08-01 warnes
793767
794 * [r114] R/running.R: - Corrected documentation mismatch for ci,
795 ci.default.
768 * [r114] - Corrected documentation mismatch for ci, ci.default.
796769
797770 - Replaced all occurences of '_' for assignment with '<-'.
798771
804777
805778 2002-04-09 warneg
806779
807 * [r109] R/combinations.R, man/combinations.Rd, man/running.Rd:
808 Checkin for version 0.5.3
780 * [r109] Checkin for version 0.5.3
809781
810782 2002-03-26 warneg
811783
812 * [r97] man/quantcut.Rd: Initial Checkin
813 * [r96] R/quantcut.R: Initial checkin.
784 * [r97] Initial Checkin
785 * [r96] Initial checkin.
814786
815787 2002-03-20 warneg
816788
817 * [r91] R/RSCompat.S: - Added definition of is.R function.
789 * [r91] - Added definition of is.R function.
818790
819791 - Added boxplot.formula
820792
821793 2002-03-07 warneg
822794
823 * [r90] man/running.Rd: - Added documentation and example for
824 running2
825 * [r89] R/running.R: - Added "running2", which handles both
826 univariate and bivariate cases
795 * [r90] - Added documentation and example for running2
796 * [r89] - Added "running2", which handles both univariate and
797 bivariate cases
827798 - Modified "running" to call "running2"
828799
829800 2002-02-05 warneg
830801
831 * [r75] R/RSCompat.S: - Fix typo that caused code meant to run only
832 under S-Plus to run
802 * [r75] - Fix typo that caused code meant to run only under S-Plus
803 to run
833804 under R, causing problems.
834805
835806 2001-12-19 warneg
836807
837 * [r67] R/RSCompat.S: - Added code for %in%.
808 * [r67] - Added code for %in%.
838809
839810 2001-09-18 warneg
840811
841 * [r18] R/RSCompat.S: Release 0.3.2
812 * [r18] Release 0.3.2
842813
843814 2001-09-01 warneg
844815
845 * [r17] R/RSCompat.S: Initial checkin.
846 * [r16] R/running.R, man/running.Rd: Release 0.3.0
816 * [r17] Initial checkin.
817 * [r16] Release 0.3.0
847818
848819 2001-08-25 warneg
849820
850 * [r13] R/running.R: Initial CVS checkin.
851 * [r11] man/combinations.Rd: Fixed a typo and a syntax error.
852 * [r7] man/running.Rd: Initial Checkin
821 * [r13] Initial CVS checkin.
822 * [r11] Fixed a typo and a syntax error.
823 * [r7] Initial Checkin
853824
854825 2001-06-29 warneg
855826
856 * [r6] ., R, R/combinations.R, man, man/combinations.Rd: Initial
857 revision.
858
827 * [r6] Initial revision.
828
0 gtools 3.5.0 - 2015-04-28
1 -------------------------
2
3 New Functions:
4
5 - New roman2int() functon to convert roman numerals to integers
6 without the range restriction of utils::as.roman().
7
8 - New asc() and chr() functions to convert between ASCII codes and
9 characters. (Based on the 'Data Debrief' blog entry for 2011-03-09
10 at http://datadebrief.blogspot.com/2011/03/ascii-code-table-in-r.html).
11
12 - New unByteCode() and unByteCodeAssign() functions to convert a
13 byte-code functon to an interpeted code function.
14
15 - New assignEdgewise() function for making assignments into locked
16 environments. (Used by unByteCodeAssign().)
17
18 Enhacements:
19
20 - mixedsort() and mixedorder() now have arguments 'decreasing',
21 'na.last', and 'blank.last' arguments to control sort ordering.
22
23 - mixedsort() and mixedirdeR() now support Roman numerals via the
24 arguments 'numeric.type', and 'roman.case'. (Request by David
25 Winsemius, suggested code changes by Henrik Bengtsson.)
26
27 - speed up mixedorder() (and hence mixedsort()) by moving
28 suppressWarnings() outside of lapply loops. (Suggestion by Henrik
29 Bengtsson.)
30
31 - The 'q' argument to quantcut() now accept an integer
32 indicating the number of equally spaced quantile groups to
33 create. (Suggestion and patch submitted by Ryan C. Thompson.)
34
35 Bug fixes:
36
37 - Removed stray browser() call in smartbind().
38
39 - ddirichlet(x, alpha) was incorrectly returning NA when for any i,
40 x[i]=0 and alpha[i]=1. (Bug report by John Nolan.)
41
42 Other changes:
43
44 - Correct typographical errors in package description.
45
46
047 gtools 3.4.2 - 2015-04-06
148 -------------------------
249
2121 }
2222 \author{Arni Magnusson \email{arnima@hafro.is}}
2323 \note{
24 To render single backslashes, use these or similar techniques:
25 \preformatted{
24 To render single backslashes, use these or similar techniques:\preformatted{
2625 write(ASCIIfy(x), "file.txt")
2726 cat(paste(ASCIIfy(x), collapse="\n"), "\n", sep="")}
2827
0 \name{asc}
1 \alias{asc}
2 \alias{chr}
3 \title{Convert between characters and ASCII codes}
4 \description{
5 \code{asc} returns the ASCII codes for the specified characters.
6 \code{chr} returns the characters corresponding to the specified ASCII codes.
7 }
8 \usage{
9 asc(char, simplify=TRUE)
10 chr(ascii)
11 }
12 \arguments{
13 \item{char}{vector of character strings}
14
15 \item{simplify}{logical indicating whether to attempt to convert the
16 result into a vector or matrix object. See \code{\link[base]{sapply}}
17 for details.
18 }
19 \item{ascii}{vector or list of vectors containing integer ASCII codes}
20 }
21 \value{
22 \code{asc} returns the integer ASCII values for each character
23 in the elements of \code{char}. If \code{simplify=FALSE} the result
24 will be a list contining one vector per element of \code{char}. If
25 \code{simplify=TRUE}, the code will attempt to convert the result into
26 a vector or matrix.
27
28 \code{asc} returns the characters corresponding to the provided ASCII
29 values.
30 }
31 \author{
32 Adapted by Gregory R. Warnes \email{greg@warnes.net} from code posted
33 on the 'Data Debrief' blog on 2011-03-09 at
34 \url{http://datadebrief.blogspot.com/2011/03/ascii-code-table-in-r.html}.
35 }
36 \seealso{
37 \code{\link[base]{strtoi}},
38 \code{\link[base]{charToRaw}},
39 \code{\link[base]{rawToChar}},
40 \code{\link[base]{as.raw}}
41 }
42 \examples{
43 ## ascii codes for lowercase letters
44 asc(letters)
45
46 ## uppercase letters from ascii codes
47 chr(65:90)
48
49 ## works on muti-character strings
50 ( tmp <- asc('hello!') )
51 chr(tmp)
52
53 ## Use 'simplify=FALSE' to return the result as a list
54 ( tmp <- asc('hello!', simplify=FALSE) )
55 chr(tmp)
56
57 ## When simplify=FALSE the results can be...
58 asc( c('a', 'e', 'i', 'o', 'u', 'y' ) ) # a vector
59 asc( c('ae', 'io', 'uy' ) ) # or a matrix
60
61 ## When simplify=TRUE the results are always a list...
62 asc( c('a', 'e', 'i', 'o', 'u', 'y' ), simplify=FALSE )
63 asc( c('ae', 'io', 'uy' ), simplify=FALSE)
64 }
65 \keyword{character}
66 \keyword{programming}
0 % $Id: mixedsort.Rd 1433 2010-05-01 22:03:03Z warnes $
1 %
20 \name{mixedsort}
31 \alias{mixedsort}
42 \alias{mixedorder}
53 \title{Order or Sort strings with embedded numbers so that the numbers
64 are in the correct order}
75 \description{
8 These functions sort or order character strings containing numbers so
9 that the numbers are numerically sorted rather than sorted by
10 character value. I.e. "Asprin 50mg" will come before "Asprin 100mg".
11 In addition, case of character strings is ignored so that "a", will
12 come before "B" and "C".
6 These functions sort or order character strings containing embedded
7 numbers so that the numbers are numerically sorted rather than sorted
8 by character value. I.e. "Asprin 50mg" will come before
9 "Asprin 100mg". In addition, case of character strings is ignored so
10 that "a", will come before "B" and "C".
1311 }
1412 \usage{
15 mixedsort(x)
13 mixedsort(x, decreasing=FALSE, na.last=TRUE, blank.last=FALSE,
14 numeric.type=c("decimal", "roman"),
15 roman.case=c("upper","lower","both") )
16 mixedorder(x, decreasing=FALSE, na.last=TRUE, blank.last=FALSE,
17 numeric.type=c("decimal", "roman"),
18 roman.case=c("upper","lower","both") )
1619 }
1720 \arguments{
18 \item{x}{ Character vector to be sorted }
21 \item{x}{Vector to be sorted.}
22 \item{decreasing}{logical. Should the sort be increasing or
23 decreasing? Note that \code{descending=TRUE} reverses the meanings of
24 \code{na.last} and \code{blanks.last}.}
25 \item{na.last}{for controlling the treatment of \code{NA} values. If \code{TRUE}, missing
26 values in the data are put last; if \code{FALSE}, they are put
27 first; if \code{NA}, they are removed.}
28 \item{blank.last}{for controlling the treatment of blank values. If \code{TRUE}, blank
29 values in the data are put last; if \code{FALSE}, they are put
30 first; if \code{NA}, they are removed.}
31 \item{numeric.type}{either "decimal" (default) or "roman". Are numeric values represented as
32 decimal numbers (\code{numeric.type="decimal"}) or as Roman numerals
33 (\code{numeric.type="roman"})? }
34 \item{roman.case}{one of "upper", "lower", or "both". Are roman
35 numerals represented using only capital letters ('IX') or lower-case
36 letters ('ix') or both?}
1937 }
2038 \details{
21 I often have character vectors (e.g. factor labels) that contain
22 both text and numeric data, such as compound and dose. This function
39 I often have character vectors (e.g. factor labels), such as compound
40 and dose, that contain both text and numeric data. This function
2341 is useful for sorting these character vectors into a logical order.
2442
2543 It does so by splitting each character vector into a sequence of
2644 character and numeric sections, and then sorting along these sections,
2745 with numbers being sorted by numeric value (e.g. "50" comes before
2846 "100"), followed by characters strings sorted by character
29 value (e.g. "A" comes before "B").
47 value (e.g. "A" comes before "B") \emph{ignoring case} (e.g. 'A' has
48 the same sort order as 'a').
3049
31 Empty strings are always sorted to the front of the list, and \code{NA}
32 values to the end.
50 By default, sort order is ascending, empty strings are sorted to the front,
51 and \code{NA} values to the end. Setting \code{descending=TRUE}
52 changes the sort order to descending and reverses the meanings of
53 \code{na.last} and \code{blank.last}.
54
55 Parsing looks for decimal numbers unless \code{numeric.type="roman"},
56 in which parsing looks for roman numerals, with character case
57 specified by \code{roman.case}.
58
3359 }
3460 \value{
3561 \code{mixedorder} returns a vector giving the sort order of the input
3864 \author{ Gregory R. Warnes \email{greg@warnes.net} }
3965 \seealso{ \code{\link[base]{sort}}, \code{\link[base]{order}} }
4066 \examples{
41 # compound & dose labels
67 ## compound & dose labels
4268 Treatment <- c("Control", "Asprin 10mg/day", "Asprin 50mg/day",
4369 "Asprin 100mg/day", "Acetomycin 100mg/day",
4470 "Acetomycin 1000mg/day")
4571
46 # ordinary sort puts the dosages in the wrong order
72 ## ordinary sort puts the dosages in the wrong order
4773 sort(Treatment)
4874
49 # but mixedsort does the 'right' thing
75 ## but mixedsort does the 'right' thing
5076 mixedsort(Treatment)
5177
52 # Here is a more complex example
78 ## Here is a more complex example
5379 x <- rev(c("AA 0.50 ml", "AA 1.5 ml", "AA 500 ml", "AA 1500 ml",
5480 "EXP 1", "AA 1e3 ml", "A A A", "1 2 3 A", "NA", NA, "1e2",
5581 "", "-", "1A", "1 A", "100", "100A", "Inf"))
5682
5783 mixedorder(x)
5884
59 mixedsort(x)
60 # notice that plain numbers, including 'Inf' show up before strings.
85 mixedsort(x) # Notice that plain numbers, including 'Inf' show up
86 # before strings, NAs at the end, and blanks at the
87 # beginning .
6188
89
90 mixedsort(x, na.last=TRUE) # default
91 mixedsort(x, na.last=FALSE) # push NAs to the front
92
93
94 mixedsort(x, blank.last=FALSE) # default
95 mixedsort(x, blank.last=TRUE) # push blanks to the end
96
97 mixedsort(x, decreasing=FALSE) # default
98 mixedsort(x, decreasing=TRUE) # reverse sort order
99
100 ## Roman numerals
101 chapters <- c("V. Non Sequiturs", "II. More Nonsense",
102 "I. Nonsense", "IV. Nonesensical Citations",
103 "III. Utter Nonsense")
104 mixedsort(chapters, numeric.type="roman" )
105
106 ## Lower-case Roman numerals
107 vals <- c("xix", "xii", "mcv", "iii", "iv", "dcclxxii", "cdxcii",
108 "dcxcviii", "dcvi", "cci")
109 (ordered <- mixedsort(vals, numeric.type="roman", roman.case="lower"))
110 roman2int(ordered)
62111 }
63112 \keyword{univar}
64113 \keyword{manip}
65
66
67114 \concept{natural sort}
68115 \concept{dictionary sort}
69116
0 % $Id: quantcut.Rd 1433 2010-05-01 22:03:03Z warnes $
0 % $Id: quantcut.Rd 2025 2015-05-25 14:13:12Z warnes $
11 %
22 \name{quantcut}
33 \alias{quantcut}
77 Create a factor variable using the quantiles of a continous variable.
88 }
99 \usage{
10 quantcut(x, q=seq(0,1,by=0.25), na.rm=TRUE, ...)
10 quantcut(x, q=4, na.rm=TRUE, ...)
1111 }
1212 %- maybe also `usage' for other objects documented here.
1313 \arguments{
1414 \item{x}{ Continous variable. }
15 \item{q}{ Vector of quantiles used for creating groups. Defaults to
16 \code{seq(0, 1, by=0.25)}. See \code{\link{quantile}} for details. }
15 \item{q}{ Either a integer number of equally spaced quantile groups to
16 create, or a vector of quantiles used for creating groups. Defaults to
17 \code{q=4} which is equivalent to \code{q=seq(0, 1, by=0.25)}.
18 See \code{\link{quantile}} for details. }
1719 \item{na.rm}{ Boolean indicating whether missing values should be
1820 removed when computing quantiles. Defaults to TRUE.}
1921 \item{\dots}{ Optional arguments passed to \code{\link{cut}}. }
3032 of quantile intervals.
3133 }
3234 \value{
33 Factor variable with one level for each quantile interval given by \code{q}.
35 Factor variable with one level for each quantile interval.
3436 }
3537
3638 \author{Gregory R. Warnes \email{greg@warnes.net}}
5052 table(quartiles)
5153
5254 ## cut into deciles
53 deciles <- quantcut( x, seq(0,1,by=0.1) )
54 table(deciles)
55 deciles.1 <- quantcut( x, 10 )
56 table(deciles.1)
57 # or equivalently
58 deciles.2 <- quantcut( x, seq(0,1,by=0.1) )
59
60 \testonly{
61 stopifnot(identical(deciles.1, deciles.2))
62 }
5563
5664 ## show handling of 'tied' quantiles.
5765 x <- round(x) # discretize to create ties
5866 stem(x) # display the ties
59 deciles <- quantcut( x, seq(0,1,by=0.1) )
67 deciles <- quantcut( x, 10 )
6068
61 table(deciles) # note that there are only 5 groups (not 10)
69 table(deciles) # note that there are only 5 groups (not 10)
6270 # due to duplicates
6371
6472 }
0 \name{roman2int}
1 \alias{roman2int}
2 \title{Convert Roman Numerals to Integers}
3 \description{
4 Convert roman numerals to integers
5 }
6 \usage{
7 roman2int(roman)
8 }
9 \arguments{
10 \item{roman}{character vector containing roman numerals}
11 }
12 \details{
13 This functon will convert roman numerals to integers without the upper bound
14 imposed by R (3899), ignoring case.
15 }
16 \value{
17 A integer vector with the same length as \code{roman}. Character
18 strings which are not valid roman numerals will be converted to \code{NA}.
19 }
20 \author{
21 Gregory R. Warnes \email{greg@warnes.net}
22 }
23 \seealso{
24 \code{\link[utils]{as.roman}}
25 }
26 \examples{
27 roman2int( c('I', 'V', 'X', 'C', 'L', 'D', 'M' ) )
28
29 # works regardless of case
30 roman2int( 'MMXVI' )
31 roman2int( 'mmxvi' )
32
33 # works beyond R's limit of 3899
34 val.3899 <- 'MMMDCCCXCIX'
35 val.3900 <- 'MMMCM'
36 val.4000 <- 'MMMM'
37 as.numeric(as.roman( val.3899 ))
38 as.numeric(as.roman( val.3900 ))
39 as.numeric(as.roman( val.4000 ))
40
41 roman2int(val.3899)
42 roman2int(val.3900)
43 roman2int(val.4000)
44
45 }
46 \keyword{arith}
0 \name{unByteCode}
1 \alias{unByteCode}
2 \alias{unByteCodeAssign}
3 \alias{assignEdgewise}
4 \title{
5 Convert a Byte-Code Function to an Interpreted-Code Function
6 }
7 \description{
8 Convert a byte-code function to an interpreted-code function
9 }
10 \usage{
11 unByteCode(fun)
12 assignEdgewise(name, env, value)
13 unByteCodeAssign(fun)
14 }
15 \arguments{
16 \item{fun}{function to be modified}
17 \item{name}{object name}
18 \item{env}{namespace}
19 \item{value}{new function body}
20 }
21 \details{
22 The purpose of these functions is to allow a byte coded function to be
23 converted back into a fully interpreted function as a \emph{temporary}
24 work around for issues in byte-code interpretation.
25
26 \code{unByteCode} returns a copy of the function that is directly interpreted
27 from text rather than from byte-code.
28
29 \code{assignEdgewise} makes an assignment into a locked environemnt.
30
31 \code{unByteCodeAssign} changes the specified function \emph{in its source
32 environment} to be directly interpreted from text rather than from byte-code.
33 }
34 \value{
35 All three functions return a copy of the modified function or assigned value.
36 }
37 \references{
38 These functions were inspired as a work-around to R bug
39 \url{https://bugs.r-project.org/bugzilla/show_bug.cgi?id=15215}.
40 }
41 \author{
42 Gregory R. Warnes \email{greg@warnes.net}
43 }
44 \note{
45 These functions are not intended as a permanent solution to issues
46 with byte-code compilation or interpretation. Any such issues should
47 be promtply reported to the R maintainers via the R Bug Tracking
48 System at \url{https://bugs.r-project.org} and via the R-devel
49 mailing list \url{https://stat.ethz.ch/mailman/listinfo/r-devel}.
50 }
51 \seealso{
52 \code{\link[compiler]{disassemble}},
53 \code{\link{assign}}
54 }
55 \examples{
56 datURL <- "https://bugs.r-project.org/bugzilla/attachment.cgi?id=1659"
57 dat <- as.matrix(read.csv(file=datURL, row.names=1))
58 dist2 <- function(x) as.dist(1-cor(t(x), method="pearson"))
59 hclust1 <- function(x) hclust(x, method = "single")
60
61 distance <- dist2(dat)
62 cluster <- hclust1(distance)
63
64 dend <- as.dendrogram(cluster)
65
66 \dontrun{
67 ## In R 2.3.0 and earlier crashes R: with a node stack overflow error
68 plot(dend)
69 ## Error in xy.coords(x, y, recycle = TRUE) : node stack overflow
70 }
71
72 ## convert stats:::plotNode from byte-code to interpreted-code
73 unByteCodeAssign(stats:::plotNode)
74
75 # increase recursion limit
76 options("expressions"=5e4)
77
78 # now the function does not crash
79 plot(dend)
80 }
81 \keyword{programming}
82 \keyword{utilites}
0 #include <R.h>
1
2 void convert(
3 char** letters,
4 int* nchar,
5 int* values
6 )
7 {
8 if(*nchar<1) return;
9
10 for(int i=0; i<*nchar; i++)
11 {
12 if(letters[0][i]== 'I')
13 values[i]=1;
14 else if(letters[0][i]== 'V')
15 values[i]=5;
16 else if(letters[0][i]== 'X')
17 values[i]=10;
18 else if(letters[0][i]== 'L')
19 values[i]=50;
20 else if(letters[0][i]== 'C')
21 values[i]=100;
22 else if(letters[0][i]== 'D')
23 values[i]=500;
24 else if(letters[0][i]== 'M')
25 values[i]=1000;
26 else error("Invalid roman numeral '%c'", letters[0][i]);
27 }
28 }
29
30 void roman2int(char** str,
31 int* nchar,
32 int* retval)
33 {
34 if (*nchar < 1)
35 {
36 *retval = NA_INTEGER;
37 return;
38 }
39
40 int* values = (int*) R_alloc(*nchar, sizeof(int));
41 convert(str, nchar, values);
42
43 int total=0;
44 if (*nchar > 1)
45 {
46 for(int n=0; n<*nchar-1; n++)
47 {
48 if(values[n]<values[n+1])
49 {
50 total-=values[n];
51 }
52 else
53 {
54 total+=values[n];
55 }
56 }
57 }
58 total += values[*nchar-1];
59
60 retval[0] = total;
61 }
0 ## Regression test for bug reported by John Nolan:
1 ##
2 ## Whenever the pair (x[i], a[i]) == (0,1), NA would be returned, due
3 ## to an internal computation of ( 0 * -Inf ) => NaN
4 ##
5 ## The code now checks for this particular issue and sets the value of
6 ## ( 0 * -Inf ) to 0, which is correct for this calculation.
7 ##
8 library(gtools)
9
10 x = c(0,0,1)
11 alpha = c(1,2,3)
12
13 stopifnot( ddirichlet(x=x, alpha=alpha) == 0 )
14