Compartilhar via


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çãoObservaçã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.