Articles of run length encoding

Esegui la codifica della lunghezza in Matlab

Sono molto nuovo con MatLab, ho codice Run Length Encoding ma sembra non funzionare, puoi aiutarmi? Ho questo input: ChainCode = 11012321170701000700000700766666666666665555555544443344444333221322222322 e voglio renderlo in uscita RLE: (1,2), (0,1), (1,1), (2,1), (3,1), (2,1), (1,2), (7,1), (0,1), (7,1), (0,1), (1,1), (0,3), (7,1), (0,5), (7,1), (0,2), (7,1), (6,13), (5,8), (4,4), (3,2), (4,5), (3,3), (2,2), (1,1), (3,1), […]

Replicazione array basata su elementi in base a un conteggio

La mia domanda è simile a questa, ma mi piacerebbe replicare ogni elemento in base a un conteggio specificato in un secondo array della stessa dimensione. Un esempio di questo, diciamo che avevo un array v = [3 1 9 4] , voglio usare rep = [2 3 1 5] per replicare il primo elemento […]

Crea nomi di gruppo per valori consecutivi

Sembra un compito facile, non riesco a capire un modo più semplice. Ho un vettore x sotto, e ho bisogno di creare nomi di gruppo per valori consecutivi. Il mio tentativo stava usando idee migliori e migliori? # data x <- c(1,1,1,2,2,2,3,2,2,1,1) # make groups rep(paste0("Group_", 1:length(rle(x)$lengths)), rle(x)$lengths) # [1] "Group_1" "Group_1" "Group_1" "Group_2" "Group_2" […]

Decodifica run-length in MATLAB

Per un uso intelligente dell’indicizzazione lineare o accumarray , a volte ho sentito la necessità di generare sequenze basate sulla codifica run-length . Poiché non esiste una funzione integrata per questo, sto chiedendo il modo più efficiente per decodificare una sequenza codificata in RLE. Specifica: Per fare un confronto equo vorrei impostare alcune specifiche per […]

Replicazione di array element-wise in Matlab

Diciamo che ho un array unidimensionale: a = [1, 2, 3]; Esiste una funzione Matlab incorporata che accetta un array e un intero n e replica ogni elemento della matrice n volte? Ad esempio chiamare la replicate(a, 3) dovrebbe restituire [1,1,1,2,2,2,3,3,3] . Si noti che questo non è affatto lo stesso di repmat . Posso […]

Esiste un dplyr equivalente a data.table :: rleid?

data.table offre una comoda funzione, rleid per la codifica run-length: library(data.table) DT = data.table(grp=rep(c(“A”, “B”, “C”, “A”, “B”), c(2, 2, 3, 1, 2)), value=1:10) rleid(DT$grp) # [1] 1 1 2 2 3 3 3 4 5 5 Posso imitare questo in base R con: df <- data.frame(DT) rep(seq_along(rle(df$grp)$values), times = rle(df$grp)$lengths) # [1] 1 1 […]

Ripeti le copie degli elementi dell’array: decodifica Run-length in MATLAB

Sto cercando di inserire più valori in una matrice utilizzando una matrice ‘valori’ e una matrice ‘contatore’. Ad esempio, se: a=[1,3,2,5] b=[2,2,1,3] Voglio l’output di qualche funzione c=somefunction(a,b) essere c=[1,1,3,3,2,5,5,5] Dove un (1) ricorre b (1) numero di volte, a (2) ricorre b (2) volte, ecc … Esiste una funzione incorporata in MATLAB che esegue […]