A more functional apporach
output_texts = %{
"a" => "text1",
"b" => "text2",
"c" => "text3",
}
out = data
|> Enum.filter(fn {_, v} -> v > 0 end)
|> Enum.filter(fn {k, _} -> Enum.member(Map.keys(output_texts), k) end)
|> Enum.map(fn {k, _} -> output_texts[k] end)
|> Enum.join()


















