Skip to contents

Computa o IQA/WQI combinando subindices (Qi) por media ponderada. Os subindices sao obtidos por interpolacao linear por trechos sobre curvas aproximadas (estilo CETESB/NSF).

Usage

iqa(
  df,
  pesos = c(od = 0.17, coliformes = 0.15, dbo = 0.1, nt_total = 0.1, p_total = 0.1,
    turbidez = 0.08, tds = 0.08, pH = 0.12, temperatura = 0.1),
  method = c("CETESB_approx"),
  na_rm = FALSE,
  add_status = TRUE,
  locale = c("pt", "en"),
  ...
)

Arguments

df

Data frame (ou tibble) com as colunas requeridas. Nomes esperados (portugues): od, coliformes, dbo, nt_total, p_total, turbidez, tds, ph (ou pH), temperatura.

pesos

Pesos nomeados para cada parametro. Padroes seguem pratica CETESB/NSF: od=.17, coliformes=.15, dbo=.10, nt_total=.10, p_total=.10, turbidez=.08, tds=.08, pH=.12, temperatura=.10.

method

Conjunto de curvas de interpolacao; atualmente apenas "CETESB_approx".

na_rm

Logico; se FALSE (padrao), linhas com Qi ausentes geram erro. Se TRUE, o IQA e computado usando apenas os parametros disponiveis e o denominador e ajustado para a soma dos pesos presentes.

add_status

Logico; se TRUE (padrao), adiciona a coluna IQA_status com a classificacao qualitativa (0-100).

locale

Idioma de IQA_status: "pt" (padrao) ou "en".

...

Reservado para uso futuro (ignorado).

Value

O df de entrada com a coluna numerica IQA (0-100) e, quando add_status = TRUE, a coluna fator IQA_status. O atributo "iqa_method" e definido no objeto retornado.

Details

Compatibilidade de nomes:

  • A tabela de curvas usa a chave "pH". Se seus dados possuem ph (minusculo), a curva "pH" e mapeada para a coluna ph.

  • Para temperatura, a coluna temp (alias comum) e automaticamente aceita caso temperatura nao exista.

Se as curvas internas retornarem Qi em 0-10 (variante historica), o valor agregado e normalizado internamente para 0-100 antes do retorno. Valores finais sao limitados ao intervalo [0, 100].

Examples

d <- wq_demo
d2 <- iqa(d, na_rm = TRUE)
table(d2$IQA_status, useNA = "ifany")
#> 
#> Muito ruim       Ruim    Regular        Boa      Otima 
#>          0          0          0          8         12