问题标签 [run-length-encoding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - QByteArray 的 Qt 运行长度编码 (RLE)
我想对大量冗余图像数据的 Qt QByteArray 进行运行长度编码。现在我正在使用 QByteArrays qCompress 和 qUncompress 函数,它们使用 zlib 和默认压缩参数。
谷歌搜索后,我没有发现任何第三方库或 Qt 组件似乎可以开箱即用地执行 RLE。谁能给我指点 Qt 的 RLE 编码?
谢谢 -
python - 识别或统计列表中连续重复的数字(实际缺失值:nan)
基本上,我想确定数据集中的缺失值是否连续重复。如果数据集中有无数重复的缺失值,我想知道每个连续重复的缺失值集的长度是否高于某个数字。
例如:
在data
上面,总数'nan'
为 6,可以用 来计算data.count('nan')
。但是,我想知道的是缺失值可以连续重复多少。对于这个数据,答案是 3。
很抱歉我没有展示我的示例代码,但我在这方面是一个非常新手,我对编码一无所知。
任何想法、帮助或提示将不胜感激。
arm - 运行长度编码 - SIMD
我正在尝试优化运行长度编码。我正在考虑在 SIMD 中实现它。我花了几个小时在算法上工作,但没有太多进展。值得试一试吗?我正在研究霓虹灯。
谢谢。
r - 从 rle() 对象中减去最后 N 个值
以下函数用于为以下数据集创建路径概览:
--
因此,这个函数创建了两种形式的“路径”:
- Short 提供从最近到最近的每条路径的接触点序列。
- Long 提供从最近到最近的每条路径的接触点序列,包括涉及接触点的次数。
由于某些路径的接触点数量可能非常大,我想加入以下约束:仅从和中选择n
最新的值。由于路径是从对象构造的,我的问题是:short
long
rle()
如何N
从 rle() 对象中获取值及其相应的长度?由于路径是从最近的接触点保存到最近的接触点,因此N
需要选择最后的值和相应的长度。rle()
文档没有为此问题提供解决方案。
预期结果N=2
是:
haskell - Compressing by counting repetitive elements (Haskell)
I'm looking for a straight-forward combination of standard higher-order functions to compress a list by counting repetitive elements. For example the result for
"abbccccb"
would be :
another example, the result for
would be:
r - 使用 plyr 汇总 data.frame 并获取每个唯一项目的计数
我有一个带有来自票务跟踪系统的任务分配的 data.frame。
我需要总结一些月度报告的数据。这是我到目前为止所拥有的:
这让我很清楚:
在 Assignees.Involved 列中,我想进一步总结数据。在第 1 行,我希望它说“Alice 2,Bob 1”。在我看来,我需要使用其他plyr
方法来获取每个任务的受让人,对它们进行排序,然后通过函数运行它们,然后rle
将长度和值粘贴在一起。我不知道如何在汇总函数中做到这一点。
这是整个data.frame的结果:
结果:
matlab - 给定一个数据表和出现次数,我可以创建基础数据集吗?
我有一个 2 列矩阵,它描述了一段数据,以及该数据在一组中出现的次数:
鉴于此,是否有一种“优雅”的方式来生成基础数据集?IE,
有很多方法可以从B
to A
( tabulate
,使用unique
andhistc
等),但我找不到从A
to 的任何方法B
。我能做的最好的不是优雅:
我有一个偷偷摸摸的怀疑“正确”的方法是使用bsxfun
or accumarray
,但我没有足够的经验来理解这些是如何工作的。
c - c语言中的RLE算法
首先,英语不是我的主要语言。我是 C 新手,我的任务之一是在特定情况下执行 RLE 算法,它只依赖于以下条件:
'aaabb'
'bbbrr'
'ggskkkk'
等等......在这种情况下:'aaaaaayyy'
,我已经完成了以下代码:
但是,当我第二次itoa
将我int
的字符串转换为字符串时,当它完成对“y”的计数时,itoa
会覆盖 RLE 字符串。为什么,我该如何解决?
c - C中的压缩程序
我想压缩一系列字符。例如,如果我输入
输入:FFFFFBBBBBBBCCBBBAABBGGGGGSSS(27 x 8 位 = 216 位)输出:F5B7C2B3A2B2G5S3(14 x 8 位 = 112 位)
到目前为止,这就是我所拥有的,我可以计算数组中的字符数。但最重要的任务是按相同的顺序计算它们。我似乎无法弄清楚 :( 几周前我就开始关注 C 语言,我对数组、指针、ASCII 值有所了解,但无论如何似乎无法按顺序计算这些字符。我尝试了什么都有。这种方法不好,但它是我最接近它的方法。
r - 在值的连续运行中创建计数器
我希望在每次相等值的运行中创建一个序列号,例如出现计数器,一旦当前行中的值与前一行不同,它就会重新启动。
请在下面找到输入和预期输出的示例。
我的问题与这个问题非常相似:Cumulative sequence of occurrences of values。