Skip to content

Commit d11b82b

Browse files
committed
#47 fix generic data parser
1 parent 4ab6f75 commit d11b82b

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

DESCRIPTION

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Package: rsdmx
2-
Version: 0.4-5
3-
Date: 2015-02-04
2+
Version: 0.4-6
3+
Date: 2015-03-24
44
Title: Tools for Reading SDMX Data and Metadata
55
Authors@R: c(
66
person("Emmanuel", "Blondel", role = c("aut", "cre"), email = "[email protected]"),

R/SDMXGenericData-methods.R

+9-5
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,14 @@ as.data.frame.SDMXGenericData <- function(x, ...){
9898
obsTime <- as.data.frame(obsTime)
9999

100100
#value
101-
obsValueXML <- getNodeSet(obsXML,
102-
"//ns:ObsValue",
103-
namespaces = ns)[[1]]
104-
obsValue <- as.numeric(xmlGetAttr(obsValueXML, "value"))
101+
obsValue <- NA
102+
obsValuesXML <- getNodeSet(obsXML,
103+
"//ns:ObsValue",
104+
namespaces = ns)
105+
if(length(obsValuesXML) > 0){
106+
obsValueXML <- obsValuesXML[[1]]
107+
obsValue <- as.numeric(xmlGetAttr(obsValueXML, "value"))
108+
}
105109
obsValue <- as.data.frame(obsValue)
106110

107111
#attributes
@@ -126,7 +130,7 @@ as.data.frame.SDMXGenericData <- function(x, ...){
126130
if(any(obsAttrs.df == "NA")){
127131
obsAttrs.df[obsAttrs.df == "NA"] <- NA
128132
}
129-
if(any(obsAttrs.df == "NULL")){
133+
if(!is.na(obsAttrs.df) && any(obsAttrs.df == "NULL")){
130134
obsAttrs.df[obsAttrs.df == "NULL"] <- NA
131135
}
132136

0 commit comments

Comments
 (0)