parseCommas: Convert character string with Dollar signs and commas to...

Description Usage Arguments Details Value Author(s) See Also Examples

Description

as.numeric of character strings after suppressing commas and dollar signs. This is a generalization of parseDollars.

Usage

1
2
3
4
5
6
7
8
parseCommas(x, pattern='\\$|,', replacement='',
        acceptableErrorRate=0, ...)
## Default S3 method:
parseCommas(x, pattern='\\$|,', replacement='',
        acceptableErrorRate=0, ...)
## S3 method for class 'data.frame'
parseCommas(x, pattern='\\$|,', replacement='',
        acceptableErrorRate=0, ...)

Arguments

x

vector of character strings to be converted to numerics

pattern

regular expression to be replaced by replacement

replacement

Character string to substitute for each occurrence of pattern

acceptableErrorRate

number indicating the proportion of new NAs to that can be introduced and still assume it's numeric

...

optional arguments to pass to gsub

Details

as.numeric(gsub(x, ...))

The data.frame method outputs another data.frame with character or factor columns connverted to numerics using parseDollars whenever that can be done without creating NAs.

Value

Numeric vector converted from the character strings in x or a data.frame with columns that are obviously numbers in character format converted to numerics.

Author(s)

Spencer Graves

See Also

gsub as.numeric parseDollars

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
##
## 1.  a character vector
##
X2 <- c('-$2,500', '$5,000.50')
x2 <- parseDollars(X2)


all.equal(x2, c(-2500, 5000.5))


##
## A data.frame
##
chDF <- data.frame(let=letters[1:2], Dol=X2, dol=x2)
numDF <- parseCommas(chDF)

chkDF <- chDF
chkDF$Dol <- x2

all.equal(numDF, chkDF)


Search within the Ecfun package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.