From 3d6bd053a899884660d4bdb34ef8044e64694fe9 Mon Sep 17 00:00:00 2001 From: leifeld Date: Sat, 10 Feb 2024 10:05:35 +0000 Subject: [PATCH] Fixed as.POSIXct origin bug in phase transitions functions --- rDNA/rDNA/DESCRIPTION | 2 +- rDNA/rDNA/R/rDNA.R | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/rDNA/rDNA/DESCRIPTION b/rDNA/rDNA/DESCRIPTION index 504ace0b..22068348 100755 --- a/rDNA/rDNA/DESCRIPTION +++ b/rDNA/rDNA/DESCRIPTION @@ -1,6 +1,6 @@ Package: rDNA Version: 3.0.11 -Date: 2024-02-04 +Date: 2024-02-10 Title: Discourse Network Analysis in R Authors@R: c(person(given = "Philip", diff --git a/rDNA/rDNA/R/rDNA.R b/rDNA/rDNA/R/rDNA.R index 8703bb2e..bf5d6848 100644 --- a/rDNA/rDNA/R/rDNA.R +++ b/rDNA/rDNA/R/rDNA.R @@ -4882,7 +4882,7 @@ dna_phaseTransitions <- function(distanceMethod = "absdiff", # temporal embedding via MDS if (!requireNamespace("MASS", quietly = TRUE)) { - mem <- data.frame("date" = as.POSIXct(dates, format = "%d-%m-%Y", tz = "UTC"), + mem <- data.frame("date" = as.POSIXct(dates, tz = "UTC", origin = "1970-01-01"), "state" = l[[best]]$memberships) results$states <- mem warning("Skipping temporal embedding because the 'MASS' package is not installed. Consider installing it.") @@ -4892,7 +4892,7 @@ dna_phaseTransitions <- function(distanceMethod = "absdiff", distmat <- distance_mat + 1e-12 mds <- MASS::isoMDS(distmat) # MDS of distance matrix points <- mds$points - mem <- data.frame("date" = as.POSIXct(dates, format = "%d-%m-%Y", tz = "UTC"), + mem <- data.frame("date" = as.POSIXct(dates, tz = "UTC", origin = "1970-01-01"), "state" = l[[best]]$memberships, "X1" = points[, 1], "X2" = points[, 2]) @@ -5084,7 +5084,7 @@ dna_phaseTransitions2 <- function(distanceMethod = "absdiff", # retrieve mid-point dates (gamma) m <- .jcall(exporter, "[Lexport/Matrix;", "getMatrixResultsArray") # get list of Matrix objects from Exporter object - dates <- sapply(m, function(x) as.POSIXct(.jcall(x, "J", "getDateTimeLong"), origin = "1970-01-01")) + dates <- sapply(m, function(x) .jcall(x, "J", "getDateTimeLong")) # long integers, still needs conversion to date # define clustering function hclustMethods <- c("single", "average", "complete", "ward") @@ -5216,7 +5216,7 @@ dna_phaseTransitions2 <- function(distanceMethod = "absdiff", # temporal embedding via MDS if (!requireNamespace("MASS", quietly = TRUE)) { - mem <- data.frame("date" = as.POSIXct(dates, format = "%d-%m-%Y", tz = "UTC"), + mem <- data.frame("date" = as.POSIXct(dates, tz = "UTC", origin = "1970-01-01"), "state" = l[[best]]$memberships) results$states <- mem warning("Skipping temporal embedding because the 'MASS' package is not installed. Consider installing it.") @@ -5226,7 +5226,7 @@ dna_phaseTransitions2 <- function(distanceMethod = "absdiff", distmat <- distance_mat + 1e-12 mds <- MASS::isoMDS(distmat) # MDS of distance matrix points <- mds$points - mem <- data.frame("date" = as.POSIXct(dates, format = "%d-%m-%Y", tz = "UTC"), + mem <- data.frame("date" = as.POSIXct(dates, tz = "UTC", origin = "1970-01-01"), "state" = l[[best]]$memberships, "X1" = points[, 1], "X2" = points[, 2])