.. _avg:
===
avg
===
A média de uma sequência de valores
Descrição
~~~~~~~~~
A função fn:avg calcula a média de uma sequência de valores. A sequência $arg
pode misturar valores numéricos e sem tipo. Os valores numéricos são promovidos
quando preciso para ficarem todos do mesmo tipo. Valores sem tipo são
convertidos em xs:double.
A função também serve para durações: a sequência $arg pode ter só valores
xs:yearMonthDuration ou só valores xs:dayTimeDuration (mas não uma mistura dos
dois).
Cuidado com valores "ausentes" ao usar fn:avg. Veja functx:avg-empty-is-zero
para saber mais.
.. list-table::
:widths: 40 60
:header-rows: 1
* - **Parâmetros**
- **Descrição**
* - arg:numeric()
- a sequência de valores para a média
Exemplos
~~~~~~~~
Os exemplos abaixo usam este documento de entrada:
.. code-block:: xml
.. list-table::
:widths: 50 50
:header-rows: 1
* - **XPath**
- **Resultado**
* - avg( (1, 2, 3, 4, 5) )
- 3
* - avg( (1, 2, 3, (), 4, 5) )
- 3
* - avg((xs:yearMonthDuration('P4M'), xs:yearMonthDuration('P6M') ) )
- P5M
* - avg($ordDoc//item/@quantity)
- 1.1666666666666667
* - avg( () )
- ()
* - avg($ordDoc//item/@dept)
- Error FORG0001
Veja também
~~~~~~~~~~~
.. toctree::
:titlesonly:
:glob:
* :ref:`functx_avg-empty-is-zero`.
* :ref:`sum`.
* :ref:`count`.