;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Estudo: infectados por covid-19 podem ser de 5 a 30 vezes o dado oficial

Do UOL, em São Paulo

17/03/2020 17h54Atualizada em 19/03/2020 16h16

Resumo da notícia

  • Em todo o mundo, há preocupação sobre defasagem de dados oficiais
  • EUA realiza comparativamente menos testes que outros países
  • Casos não testados ou assintomáticos são responsáveis por boa parte das contaminações

Pesquisadores americanos que estudam a propagação do novo coronavírus estimam que o número real de casos pode ser de cinco a 30 vezes maior do que o divulgado oficialmente. Apenas no estado de Massachusetts, nos EUA, onde o cálculo foi feito, os especialistas avaliam que o número de pessoas infectadas possa ser de 1.970 a até 6,5 mil pessoas, a depender da metodologia utilizada. O dado oficial fala em 218 nesta terça.

Um estudo publicado ontem na revista Science usa como base pesquisa epidemiológica e dados de celulares para concluir que, no início da pandemia, apenas um em cada sete casos foram detectados em Wuhan, na China. Assim, boa parte das contaminações foi causada por pessoas aparentemente saudáveis

"Estamos vendo apenas a ponta do iceberg, e a pergunta é: quanto do iceberg está submerso?", afirmou Jeffrey Shaman, professor da Universidade Columbia e coautor do texto. Segundo ele, apenas no estado americano o número, que oficialmente é de 218, pode chegar a 2.180 casos. Esta metodologia considera que o governo americano detecte algo entre um caso em cada cinco e um caso em cada dez.

Como acontece no Brasil e em outras partes do mundo, o estudo aponta para número de pessoas infectadas e não testadas, especialmente as assintomáticas, que não entram nas contabilidades oficiais. São casos considerados mais perigosos para a disseminação da covid-19 por não fazerem o isolamento recomendado.

Em outra análise, o especialista em doenças infecciosas Samuel Scarpino, da Universidade Northeastern, aplicou um algoritmo desenvolvido pela Universidade de Notre Dame para concluir que, apenas no estado, o número de pacientes pode chegar a 6.540 ou mais. A metodologia considera que os EUA detectem algo entre 1 caso a cada dez e 1 caso a cada 30.

O dado é agravado, na análise dos especialistas, pelo baixo índice de testes aplicados nos Estados Unidos se comparado a outros países.

Em Wuhan, o número de casos que escapavam à detecção caiu drasticamente para 35% depois que as autoridades aumentaram os testes e impam quarentenas e restrições de viagem.

Os pesquisadores concordam que é essencial aumentar o número de testes realizados a fim de esclarecer o risco real a que a população está submetida.

"Os achados indicam que um aumento radical na identificação e no isolamento das infecções são necessários para controlar devidamente o vírus", escreve Shaman.


Errata: este conteúdo foi atualizado
Diferentemente do que informou a primeira versão desta reportagem, o correto é dizer pesquisa epidemiológica, não epistemológica. O texto foi corrigido.