joshuaulrich / joshuaulrich/quantmod
[R-Forge #5762] Handle col.names in getSymbols.(rda|rds|RData)
- Dominant language
- R
- Stars
- 906
- Forks
- 233
- PR merge metrics
- No merged PRs in 30d
Description
Submitted by: Daniele Signori
Assigned to: Nobody
[R-Forge link](http://r-forge.r-project.org/tracker/index.php?func=detail&aid=5762&group_id=125&atid=546)
This patch adds lookup handling of the arument `col.names` for `getSymbols.rds` and `getSymbols.rda`. Moreover, if `col.names = NA` is passed, then the column names as saved in the rda/rds/rdata files are used. See diff below.
```
Index: pkg/R/getSymbols.R
===================================================================
--- pkg/R/getSymbols.R (revision 611)
+++ pkg/R/getSymbols.R (working copy)
@@ -687,6 +687,7 @@
default.return.class <- return.class
default.dir <- dir
default.extension <- extension
+ default.col.names <- col.names
if(missing(verbose)) verbose <- FALSE
if(missing(auto.assign)) auto.assign <- TRUE
@@ -701,6 +702,10 @@
extension <- getSymbolLookup()[[Symbols[[i]]]]$extension
extension <- ifelse(is.null(extension),default.extension,
extension)
+
+ col.names <- getSymbolLookup()[[Symbols[[i]]]]$col.names
+ col.names <- if(is.null(col.names)) default.col.names else col.names
+
if(verbose) cat("loading ",Symbols[[i]],".....")
if(dir=="") {
sym.file <- paste(Symbols[[i]],extension,sep=".")
@@ -717,6 +722,7 @@
if(verbose)
cat("done.\n")
if(!is.xts(fr)) fr <- xts(fr[,-1],as.Date(fr[,1],origin='1970-01-01'),src='rda',updated=Sys.time())
+ if(is.na(col.names)) col.names <- colnames(fr) # if NA, use original colnames
colnames(fr) <- paste(toupper(gsub('\\^','',Symbols[[i]])),col.names,sep='.')
fr <- convert.time.series(fr=fr,return.class=return.class)
Symbols[[i]] <-toupper(gsub('\\^','',Symbols[[i]]))
@@ -746,7 +752,8 @@
default.return.class <- return.class
default.dir <- dir
default.extension <- extension
-
+ default.col.names <- col.names
+
if(missing(verbose)) verbose <- FALSE
if(missing(auto.assign)) auto.assign <- TRUE
@@ -760,6 +767,10 @@
extension <- getSymbolLookup()[[Symbols[[i]]]]$extension
extension <- ifelse(is.null(extension),default.extension,
extension)
+
+ col.names <- getSymbolLookup()[[Symbols[[i]]]]$col.names
+ col.names <- if(is.null(col.names)) default.col.names else col.names
+
if(verbose) cat("loading ",Symbols[[i]],".....")
if(dir=="") {
sym.file <- paste(Symbols[[i]],extension,sep=".")
@@ -777,7 +788,8 @@
if(verbose)
cat("done.\n")
if(!is.xts(fr)) fr <- xts(fr[,-1],as.Date(fr[,1],origin='1970-01-01'),src='rda',updated=Sys.time())
- colnames(fr) <- paste(toupper(gsub('\\^','',Symbols[[i]])),col.names,sep='.')
+ if(is.na(col.names)) col.names <- colnames(fr) # if NA, use original colnames
+ colnames(fr) <- paste(toupper(gsub('\\^','',Symbols[[i]])), col.names, sep='.')
fr <- convert.time.series(fr=fr,return.class=return.class)
Symbols[[i]] <-toupper(gsub('\\^','',Symbols[[i]]))
if(auto.assign)
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.