Поделиться через


BottomPercent (расширения интеллектуального анализа данных)

Возвращает, в порядке возрастания ранга, нижние строки таблицы, сумма которых, как минимум, равна указанному процентному соотношению.

Синтаксис

BottomPercent(<table expression>, <rank expression>, <percent>)

Аргументы

  • <Table expression>
    Имя столбца вложенной таблицы или возвращающего табличное значение выражения.

  • <rank expression>
    Столбец во вложенной таблице или выражение, результатом которого является столбец.

  • <percent>
    Значение типа double, означающее совокупный целевой процент.

Тип результата

Таблица.

Замечания

Функция BottomPercent возвращает нижние строки таблицы в порядке возрастания ранга. Ранг основан на вычисленном значении аргумента <rank expression> для каждой строки. Строки возвращаются таким образом, чтобы сумма значений <rank expression> была больше или равна проценту, заданному аргументом <percent>. Функция BottomPercent возвращает наименьшее количество возможных элементов, удовлетворяющих условию при заданном проценте.

Примеры

В следующем примере создается прогнозирующий запрос к модели взаимосвязей, построенной в Учебник по основам интеллектуального анализа данных.

Чтобы понять, как работает функция BottomPercent, возможно, будет полезно сначала выполнить прогнозирующий запрос, который возвращает только вложенную таблицу.

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
ПримечаниеПримечание

В этом примере значение, заданное в качестве входных данных, содержит знак одинарной кавычки, а значит, его нужно экранировать и добавить перед ним еще один знак кавычки. При отсутствии уверенности в синтаксических конструкциях, используемых для вставки экранирующего символа, запросы можно создавать с помощью построителя прогнозирующих запросов. При выборе значения из раскрывающегося списка необходимый экранирующий символ вставляется автоматически. Дополнительные сведения см. в разделе Как создать одноэлементный запрос в конструкторе интеллектуального анализа данных.

Образец результатов:

Model

$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

Road Tire Tube

1588

0.106727603

0.101229538

Cycling Cap

1473

0.098998589

0.094256014

Fender Set - Mountain

1415

0.095100477

0.090718432

Mountain Bottle Cage

1367

0.091874454

0.087780332

Road Bottle Cage

1195

0.080314537

0.077173962

Функция BottomPercent принимает результаты этого запроса и возвращает строки с наименьшими значениями, сумма которых составляет заданную процентную долю.

SELECT 
BottomPercent
    (
    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

Первый аргумент функции BottomPercent — это имя столбца таблицы. В этом примере для возврата вложенной таблицы нужно вызвать функцию Predict и использовать аргумент INCLUDE_STATISTICS.

Второй аргумент функции BottomPercent — это столбец вложенной таблицы, используемый для упорядочения результатов. В этом примере параметр INCLUDE_STATISTICS возвращает столбцы $SUPPORT, $PROBABILTY и $ADJUSTED PROBABILITY. В этом примере используется столбец $SUPPORT, поскольку значения в нем не являются дробными и их легче проверять.

Третий аргумент функции BottomPercent указывает долю в процентах и имеет тип double. Чтобы получить строки, представляющие нижние 50 процентов поддержки, необходимо ввести число 50.

Образец результатов:

Model

$SUPPORT

$PROBABILITY

$ADJUSTEDPROBABILITY

Road Bottle Cage

1195

0.080314537

0.077173962

Mountain Bottle Cage

1367

0.091874454

0.087780332

Fender Set - Mountain

1415

0.095100477

0.090718432

Cycling Cap

1473

0.098998589

0.094256014

Road Tire Tube

1588

0.106727603

0.101229538

Mountain-200

1755

0.117951475

0.111260823

Mountain Tire Tube

1992

0.133879965

0.125304948

Примечание.   Этот пример призван только продемонстрировать использование BottomPercent. В зависимости от размера набора данных на выполнение запроса может потребоваться много времени.