Различное поведение между re.finditer и re.findall

У меня есть одна переменная, называемая Начато , которая представляет собой дату, когда люди участвовали в исследовании, и другая переменная, называемая dos1 , которая является датой последней операции. Я хочу выяснить, сколько месяцев прошло с момента последней операции до дня зачисления. Я попробовал:

as.period(syrrupan$Started-syrrupan$dos1,units=c("month"))

Я ожидал, что это даст мне что-то вроде:

14, 18, 1, 26 

Каждое число - это количество месяцев.

Вместо этого я получаю: $ me = новый человек; не раз в год. Канал связи действительно очень медленный, поэтому мы хотели бы заранее сжать данные, передать их устройству и позволить ему распаковать данные во внутреннюю флэш-память. Само устройство, однако, работает на микроконтроллере, который работает не очень быстро и не имеет большого объема памяти. У него достаточно флэш-памяти для хранения результата, и он может распаковывать блок данных по мере его получения, но ему может не хватить ОЗУ для хранения всех сжатых или несжатых (или даже обоих!) Блоков данных. И, конечно же, у него нет операционной системы или другой роскоши.

Это означает, что нам нужен достаточно быстрый алгоритм распаковки, который не использует много памяти. Сжатие может быть медленным и некрасивым, поскольку мы делаем это на стороне ПК. Код C или .NET предпочтителен для сжатия, чтобы упростить задачу. Код распаковки должен быть на языке C, поскольку маловероятно, что у кого-то есть версия, оптимизированная для ASM для нашего контроллера.

Мы нашли LZO, который был бы почти идеальным для нас, но у него есть так называемая «бесплатная» лицензия (GPL ) по умолчанию, что делает его полностью непригодным для использования нашим клиентом. Автор говорит, что коммерческие лицензии доступны по запросу, но, к сожалению, в настоящее время он недоступен (по нетехническим причинам, как говорится в новостях на его сайте).

Я нашел несколько других библиотек, включая puff.c из zlib, и мы все еще занимаемся расследованием, но я подумал, что попрошу вас поделиться своим опытом:

Какой алгоритм сжатия и / или библиотеку вы рекомендуете для встроенных целей, учитывая, что устройство декомпрессии имеет действительно ограниченные ресурсы и исходный код, а также требуется коммерческая лицензия?

16
задан OregonGhost 22 September 2010 в 08:48
поделиться