Skip to content

Commit 6f4da79

Browse files
committed
stores classes as factor in time series
1 parent 5aa4412 commit 6f4da79

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

R/aggregate_per_date.R

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@ aggregate_per_date = function(tsDir, epoch, classifier, classes,
4242
# format timestamp to ease calculations
4343
ts$timestamp = strptime(paste(ts$date, ts$time), format = "%Y-%m-%d %H:%M:%OS", tz = "")
4444
ts$time = format(ts$timestamp, "%H:%M:%S")
45-
ts$activity = factor(ts$activity, levels = 1:length(classes), labels = classes)
45+
if (is.numeric(ts$activity)) { # ensures compatibility with versions <0.1.4
46+
ts$activity = factor(ts$activity, levels = 1:length(classes), labels = classes)
47+
}
4648
# Day of the week, used for summarizing per day
4749
availableDates = unique(ts$date)
4850
# matrix to store the results

R/classifySleep.R

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ classifySleep = function(anglez, starttime, classifier, infoClassifier, ts, do.s
7676
}
7777
}
7878
# add nonwear to ts
79+
ts$activity = as.numeric(ts$activity)
7980
nonwear_id = length(classes) + 1
8081
classes = c(classes, "nonwear")
8182
ts$nonwear_orig = ts$nonwear
@@ -128,6 +129,6 @@ classifySleep = function(anglez, starttime, classifier, infoClassifier, ts, do.s
128129
ts$activity[which(ts$sleep_periods == 1)] = sleep_id
129130
}
130131
}
131-
activity = ts$activity
132+
activity = factor(x = ts$activity, levels = 1:length(classes), labels = classes)
132133
return(activity)
133134
}

R/runActimetric.R

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,8 @@ runActimetric = function(input_directory = NULL, output_directory = NULL, studyn
227227
S = matrix(0,0,4) #dummy variable needed to cope with head-tailing succeeding blocks of data
228228
# ---------------------------------------------------------------------
229229
# Run Pipeline...
230-
nonwear = enmo = agcounts = LFEcounts = tilt = anglez = activity = NULL
230+
nonwear = enmo = agcounts = LFEcounts = tilt = anglez = NULL
231+
activity = factor()
231232
while (isLastBlock == FALSE) {
232233
# 1 - read and extract calibration coefficients
233234
accread = ReadAndCalibrate(file = file, sf = sf, blocksize = blocksize,
@@ -340,7 +341,7 @@ runActimetric = function(input_directory = NULL, output_directory = NULL, studyn
340341
if (!is.null(LFEcounts)) {
341342
if (nrow(LFEcounts) == nrow(ts)) ts = as.data.frame(cbind(ts, LFEcounts))
342343
}
343-
numeric_columns = sapply(ts, mode) == 'numeric'
344+
numeric_columns = sapply(ts, class) == 'numeric'
344345
ts[numeric_columns] = round(ts[numeric_columns], 3)
345346
ts = do.call(data.frame,lapply(ts, function(x) replace(x, is.infinite(x), NA)))
346347
ts[is.na(ts)] = 0

0 commit comments

Comments
 (0)