
Last chance! 50% off unlimited learning
Sale ends in
Replacing separators (for example, decimal and thousand separators).
convertFile(
filename,
symbol1 = NULL,
symbol2 = NULL,
newsymbol1 = "",
newsymbol2 = "",
sep = ";",
newsep = NULL,
header = TRUE,
columns = NULL,
outputfile = gsub("^(.*)(\.)([^\.]*)$", "\1_new.\3", filename),
fixed.s1 = TRUE,
fixed.s2 = TRUE,
fixed.sep = TRUE,
...
)
String: filename (including path if necessary) of input file.
String: symbol to replace by newsymbol1
, for example
decimal separator.
String: second symbol to replace by newsymbol2
,
for example thousand separator.
String: symbol to replace symbol1
.
String: symbol to replace symbol2
.
String: column separator. Could be also used to replace symbols
in the header and data by newsep
, regardless of columns.
String: symbol to replace sep
.
Only possible when columns
is set to NULL.
Logical: whether or not there is header line. symbol1
and symbol2
are not replaced in the header line. Default set to TRUE.
Vector with numerical values: indices of columns in which symbols need to be replaced.
String: name of outputfile.
Logical: whether or not to treat symbol1
as fixed
text instead of regular expression. Default is set to TRUE
(no regular expression).
Logical: whether or not to treat symbol2
as fixed
text instead of regular expression. Default is set to TRUE
(no regular expression).
Logical: whether or not to treat sep
as fixed
text instead of regular expression. Default is set to TRUE
(no regular expression).
Additional parameters for read.table
and
write.table
.
# NOT RUN {
# normally, the function call would look something like this:
convertFile('example1.csv', symbol1=',', symbol2='.', sep='\t',
newsymbol1='.', newsymbol2='')
# But as we are not sure that the file example1.csv is available,
# we need to do something a little more complicated to point to
# the file 'example1.csv' that comes with the package:
# finding one of the example files from the package:
file1 <- system.file('extdata', 'example1.csv', package = 'plotfunctions')
# example 1:
system.time({
convertFile(file1, symbol1=',', symbol2='.',
newsymbol1='.', newsymbol2='', outputfile='example1_new.csv')
})
# example 2: type 'yes' to overwrite the previous output file,
# or specify a different filename in outputfile.
system.time({
convertFile(file1, symbol1=',', symbol2='.', sep='\t',
newsymbol1='.', newsymbol2='', columns=1:2, outputfile='example1_new.csv')
})
# Example 1 takes less time, as it does not use read.table,
# but just reads the file as text lines. However, the column
# version could be useful when symbols should be replaced only
# in specific columns.
# Note that Example 2 writes the output with quotes, but this is
# not a problem for read.table:
dat <- read.table('example1_new.csv', header=TRUE, sep='\t',
stringsAsFactors=FALSE)
# }
Run the code above in your browser using DataLab