Na função casos_dengue podemos usar o operador boleano "or" ao inves de criar uma estrutura if e else, exemplo a baixo:
def casos_dengue(elemtento):
uf, registros = elemtento
for registro in registros:
# if bool(re.search(r'\d', registro['casos'])):
yield (f"{uf}-{registro['ano_mes']}", float(registro['casos'] or 0.0 ))
# else:
# float(registro['casos'], 0.0 )