source("StrukturaPlikow.R") TF <- read_structure() read_nk <- function(.version = 6, nk, .type = "odl") { # Weźmy konkretną częstotliwość. TF <- TF %>% filter(version == .version) # TF <- TF %>% filter(fc == 20000) TF <- TF %>% filter(NK == nk) V_th <- 3 TD <- tibble() for(i in seq_len(nrow(TF))) { obj <- TF[i, ] filename <- obj$plik V <- read_rds(filename) T2 <- map_dfr(V, function(syg) { syg <- unlist(syg) rley <- rle(abs(syg) >= V_th) les <- rley$lengths les <- les[-c(1, length(les))] vals <- rley$values vals <- vals[-c(1, length(vals))] if( .type == "zak" ) { return( with(obj, tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "zak", value = les[vals], N = N )) ) } else if( .type == "odl" ) { return( with(obj, tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "odl", value = les[!vals], N = N )) ) } else if( .type == "both" ) { return( with(obj, bind_rows( tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "zak", value = les[vals], N = N ), tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "odl", value = les[!vals], N = N ) )) ) } }) TD <- bind_rows(TD, T2) } return(TD) } read_freq <- function(.version = 6, freq, .type = "odl") { # Weźmy konkretną częstotliwość. TF <- TF %>% filter(version == .version) TF <- TF %>% filter(fc == freq) # TF <- TF %>% filter(NK == nk) V_th <- 3 TD <- tibble() for(i in seq_len(nrow(TF))) { obj <- TF[i, ] filename <- obj$plik V <- read_rds(filename) T2 <- map_dfr(V, function(syg) { syg <- unlist(syg) rley <- rle(abs(syg) >= V_th) les <- rley$lengths les <- les[-c(1, length(les))] vals <- rley$values vals <- vals[-c(1, length(vals))] if( .type == "zak" ) { return( with(obj, tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "zak", value = les[vals], N = N )) ) } else if( .type == "odl" ) { return( with(obj, tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "odl", value = les[!vals], N = N )) ) } else if( .type == "both" ) { return( with(obj, bind_rows( tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "zak", value = les[vals], N = N ), tibble( NK = NK, pc = pc, fc = fc, fd = fd, dt = dt, A = A, f = f, lambda = lambda, type = "odl", value = les[!vals], N = N ) )) ) } }) TD <- bind_rows(TD, T2) } return(TD) }