TopPercent (DMX)
A função TopPercent retorna, em ordem de classificação decrescente, as linhas superiores de uma tabela cujo total cumulativo é no mínimo um percentual especificado.
Sintaxe
TopPercent(<table expression>, <rank expression>, <percent>)
Aplica-se a
Uma expressão que retorna uma tabela, como uma <referência de coluna de tabela> ou uma função que retorna uma tabela.
Tipo de retorno
<<expressão de tabela>>
Comentários
A função TopPercent retorna as linhas superiores em ordem decrescente de classificação, com base no valor avaliado do argumento <expressão de classificação> de cada linha, de modo que a soma dos valores da <expressão de classificação> seja no mínimo o percentual dado, que é especificado pelo argumento <percentual>. TopPercent retorna o menor número possível de elementos, embora ainda assim atenda o valor percentual especificado.
Exemplos
O exemplo a seguir cria uma consulta de previsão no modelo de Associação que você compila usando o Tutorial de mineração de dados básico.
Para compreender como a função TopPercent funciona, talvez seja útil primeiro executar uma consulta de previsão que retorne apenas a tabela aninhada.
SELECT Predict ([Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 10)
FROM
[Association]
NATURAL PREDICTION JOIN
SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t
Observação |
---|
Neste exemplo, o valor fornecido como entrada contém uma única aspa e, portanto, deve ser precedido por outra aspa. Se você não tiver certeza da sintaxe para inserção de um caractere de escape, use o Construtor de Consultas de Previsão para criar a consulta. Quando você seleciona o valor da lista suspensa, o caractere de escape exigido é inserido. Para obter mais informações, consulte Como criar uma consulta Singleton no Designer de Mineração de Dados. |
Resultados do exemplo:
Modelo |
$SUPPORT |
$PROBABILITY |
$ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 |
4334 |
0.291283016 |
0.252695851 |
Water Bottle |
2866 |
0.192620472 |
0.175205052 |
Patch kit |
2113 |
0.142012232 |
0.132389356 |
Mountain Tire Tube |
1992 |
0.133879965 |
0.125304948 |
Mountain-200 |
1755 |
0.117951475 |
0.111260823 |
Tubo de pneu de estrada |
1588 |
0.106727603 |
0.101229538 |
Capacete para Ciclismo |
1473 |
0.098998589 |
0.094256014 |
Conjunto de pára-lamas - Montanha |
1415 |
0.095100477 |
0.090718432 |
Cantil para Mountain Bike |
1367 |
0.091874454 |
0.087780332 |
Cantil de estrada |
1195 |
0.080314537 |
0.077173962 |
A função TopPercent utiliza os resultados dessa consulta e retorna as linhas com os maiores valores que totalizam a porcentagem especificada.
SELECT
TopPercent
(
Predict ([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,10),
$SUPPORT,
50)
FROM
[Association]
NATURAL PREDICTION JOIN
(SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t
O primeiro argumento para a função TopPercent é o nome de uma coluna de tabela. Neste exemplo, a tabela aninhada é retornada chamando-se a função Predict e usando-se o argumento INCLUDE_STATISTICS.
O segundo argumento para a função TopPercent é a coluna na tabela aninhada que você pode usar para ordenar os resultados. Neste exemplo, a opção de INCLUDE_STATISTICS retorna as colunas $SUPPORT, $PROBABILTY e $ADJUSTED PROBABILITY. Este exemplo usa $SUPPORT porque os valores de suporte não são fracionários e, portanto, são mais fáceis de verificar.
O terceiro argumento para a função TopPercent especifica a porcentagem, como um dobro. Para obter as linhas dos principais produtos que totalizam até 50 por cento do suporte total, digite 50.
Resultados do exemplo:
Modelo |
$SUPPORT |
$PROBABILITY |
$ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 |
4334 |
0.29… |
0.25… |
Water Bottle |
2866 |
0.19… |
0.17… |
Patch kit |
2113 |
0.14… |
0.13… |
Mountain Tire Tube |
1992 |
0.133… |
0.12… |
Observação este exemplo é fornecido apenas para ilustrar o uso de TopPercent. Dependendo do tamanho do conjunto de dados, essa consulta pode demorar muito para ser executada.
Consulte também