Skip to content

Commit f825467

Browse files
authored
Merge pull request #2 from DavisVaughan/fix/replace-na-double-to-character
Replace with `"0"` not `0`, since the columns are always character
2 parents 940b63c + c094bc1 commit f825467

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

Diff for: R/xml2relational.r

+5-5
Original file line numberDiff line numberDiff line change
@@ -75,19 +75,19 @@ serial.df <- function(l, elem.df, df.name, record, prefix.primary, prefix.foreig
7575
else {
7676
if(!is.na(elem.df[record, i])) {
7777
serial <- append(serial, tidyr::replace_na(
78-
serial.df(l, df.sub, table.name, which(df.sub[, paste0(prefix.primary, table.name)] == elem.df[record, i]), prefix.primary, prefix.foreign),0))
78+
serial.df(l, df.sub, table.name, which(df.sub[, paste0(prefix.primary, table.name)] == elem.df[record, i]), prefix.primary, prefix.foreign),"0"))
7979
}
8080
}
8181
}
8282
else {
8383
if(stringr::str_sub(names(elem.df)[i], 1, nchar(prefix.primary)) != prefix.primary) {
84-
serial <- append(serial, tidyr::replace_na(elem.df[record, i], 0))
84+
serial <- append(serial, tidyr::replace_na(elem.df[record, i], "0"))
8585
names(serial)[NROW(serial)] <- paste0(df.name, "@", names(elem.df)[i])
8686
}
8787
}
8888
}
8989
if(NROW(serial) > 0) {
90-
return(tidyr::replace_na(serial[order(names(serial))],0))
90+
return(tidyr::replace_na(serial[order(names(serial))],"0"))
9191
}
9292
else return(NA)
9393
}
@@ -102,7 +102,7 @@ serial.xml <- function(obj) {
102102
else {
103103
ctn <- as.character(xml2::xml_contents(chdr[i]))
104104
if(identical(ctn, character(0))) ctn <- NA
105-
serial <- append(serial, tidyr::replace_na(ctn, 0))
105+
serial <- append(serial, tidyr::replace_na(ctn, "0"))
106106
names(serial)[NROW(serial)] <- paste0(xml2::xml_name(obj), "@", xml2::xml_name(chdr[i]))
107107
}
108108
}
@@ -121,7 +121,7 @@ find.object <- function(l, obj, prefix.primary, prefix.foreign) {
121121
res.df <- serial.df(l, elem.df, xml2::xml_name(obj), i, prefix.primary, prefix.foreign)
122122
res.xml <- serial.xml(obj)
123123
if(NROW(res.df) == NROW(res.xml)) {
124-
if(sum(tidyr::replace_na(res.df, 0) == tidyr::replace_na(res.xml, 0)) - NROW(res.df) == 0) {
124+
if(sum(tidyr::replace_na(res.df, "0") == tidyr::replace_na(res.xml, "0")) - NROW(res.df) == 0) {
125125
ex <- elem.df[i,paste0(prefix.primary,xml2::xml_name(obj))]
126126
break
127127
}

0 commit comments

Comments
 (0)