Função STDEVIF

Gera o desvio padrão de valores por grupo em uma coluna que atendam a uma condição específica.

OBSERVAÇÃO: quando adicionada a uma transformação, essa função é aplicada à amostra na grade de dados. Se você alterar a amostra ou executar o job, os valores calculados para essa função serão atualizados. As transformações que alteram o número de linhas nas etapas seguintes da receita não afetam os valores calculados para esta etapa.

Para mais informações sobre como a plataforma calcula o desvio padrão, consulte Função STDEV.

Uso básico

pivot value: STDEVIF(testScores, testScores > 0) group:studentId limit:1

Saída: gera uma tabela de duas colunas contendo os valores exclusivos para studentId e o desvio padrão da coluna testScores para esse valor studentId quando o valor testScores é maior que zero. O parâmetro limit define o número máximo de colunas de resultado.

Sintaxe

pivot value:STDEVIF(col_ref, test_expression) [group:group_col_ref] [limit:limit_count]

ArgumentoObrigatório?Tipo de dadosDescrição
col_refSstringReferência à coluna que você quer avaliar.
test_expressionSstringExpressão que é avaliada. Precisa ser resolvida como true ou false

Para mais informações sobre os padrões de sintaxe, consulte Observações de sintaxe da documentação da linguagem.

Para mais informações sobre os parâmetros group e limit, consulte Transformação Pivot.

col_ref

Nome da coluna cujos valores você quer usar no cálculo. A coluna precisa ser um tipo numérico (inteiro ou decimal).

Observações de uso:

Obrigatório?Tipo de dadosValor de exemplo
SimString que corresponde ao nome da colunamyValues

test_expression

Esse parâmetro contém a expressão a ser avaliada. Essa expressão precisa ser resolvida com um valor booleano (true ou false).

Notas de uso:

Obrigatório?Tipo de dadosValor de exemplo
SimExpressão de string que é avaliada como true ou false(LastName == 'Mouse' && FirstName == 'Mickey')

Exemplos

Exemplo: funções de cálculo condicional

Este exemplo ilustra como você pode usar as seguintes funções de cálculo condicional para analisar dados meteorológicos:

  • AVERAGEIF: média de um conjunto de valores por grupo que atende a uma condição especificada. Consulte Função AVERAGEIF.
  • MINIF: mínimo de um conjunto de valores por grupo que atende a uma condição especificada. Consulte Função MINIF.
  • MAXIF: máximo de um conjunto de valores por grupo que atende a uma condição especificada. Consulte Função MAXIF.
  • VARIF: variância de um conjunto de valores por grupo que atende a uma condição especificada. Consulte Função VARIF.
  • STDEVIF: desvio padrão de um conjunto de valores por grupo que atende a uma condição especificada. Consulte Função STDEVIF.

Origem:

Veja a seguir alguns exemplos de dados meteorológicos:

datacityraintempwind
1/23/17Valleyville0.0012,86,7
1/23/17Center Town0,319,45,3
1/23/17Magic Mountain0.000.07,3
1/24/17Valleyville0,2517,23,3
1/24/17Center Town0,541,17,6
1/24/17Magic Mountain0,325,08,8
1/25/17Valleyville0,023,36,8
1/25/17Center Town0,833,35,1
1/25/17Magic Mountain0,59-1,76,4
1/26/17Valleyville1,0815,04,2
1/26/17Center Town0,966,17,6
1/26/17Magic Mountain0,77-3,93,0
1/27/17Valleyville1,007,22,8
1/27/17Center Town1,3220,00,2
1/27/17Magic Mountain0,775,65,2
1/28/17Valleyville0,12-6,15,1
1/28/17Center Town0,145,04,9
1/28/17Magic Mountain1,501,10,4
1/29/17Valleyville0,3613,37,3
1/29/17Center Town0,756,19,0
1/29/17Magic Mountain0,603,36,0


Transformação:

Para calcular a temperatura média para dias chuvosos por cidade:

derive type:single value:AVERAGEIF(temp, rain > 0) group:city as:'avgTempWRain'

Para calcular o vento máximo para dias abaixo de zero por cidade:

derive type:single value:MAXIF(wind,temp < 0) group:city as:'maxWindSubZero'

Para calcular a temperatura mínima quando a velocidade do vento é inferior a 5 milhas por hora em cada cidade:

derive type:single value:MINIF(temp,wind<5) group:city as:'minTempWind5'

Para calcular a variação de temperatura para dias chuvosos por cidade:

derive type:single value:VARIF(temp,rain >0) group:city as:'varTempWRain'

Para calcular o desvio padrão na precipitação para Center Town:

derive type:single value:STDEVIF(rain,city=='Center Town') as:'stDevRainCT'

Use as seguintes transformações para formatar o resultado gerado. Observe o valor do marcador de posição $col para as transformações de várias colunas:

set col:stDevRainCenterTown,maxWindSubZero value:numformat($col,'##.##')

Como a transformação a seguir depende de dados que tenham apenas um dígito significativo, recomendamos formatá-las de maneira diferente:

set col:varTempWRain,avgTempWRain,minTempWind5 value:numformat($col,'##.#')

Resultados:

datecityraintempwindavgTempWRainmaxWindSubZerominTempWind5varTempWRainstDevRainCT
1/23/17Valleyville0.0012,86,78,35,17,263,80,37
1/23/17Center Town0,319,45,37,3 532,60,37
1/23/17Magic Mountain0.000.07,31,66,43-3,9120,37
1/24/17Valleyville0,2517,23,38,35,17,263,80,37
1/24/17Center Town0,541,17,67,3 532,60,37
1/24/17Magic Mountain0,325,08,81,66,43-3,9120,37
1/25/17Valleyville0,023,36,88,35,17,263,80,37
1/25/17Center Town0,833,35,17,3 532,60,37
1/25/17Magic Mountain0,59-1,76,41,66,43-3,9120,37
1/26/17Valleyville1,0815,04,28,35,17,263,80,37
1/26/17Center Town0,966,17,67,3 532,60,37
1/26/17Magic Mountain0,77-3,93,01,66,43-3,9120,37
1/27/17Valleyville1,007,22,88,35,17,263,80,37
1/27/17Center Town1,3220,00,27,3 532,60,37
1/27/17Magic Mountain0,775,65,21,66,43-3,9120,37
1/28/17Valleyville0,12-6,15,18,35,17,263,80,37
1/28/17Center Town0,145,04,97,3 532,60,37
1/28/17Magic Mountain1,501,10,41,66,43-3,9120,37
1/29/17Valleyville0,3613,37,38,35,17,263,80,37
1/29/17Center Town0,756,19,07,3 532,60,37
1/29/17Magic Mountain0,603,36,01,66,43-3,9120,37

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Google Cloud Dataprep
Precisa de ajuda? Acesse nossa página de suporte.