# Sample

sample または LOAD ステートメントの SELECT プレフィックスは、データ ソースからランダムにレコード サンプルをロードする際に使用します。

構文:

Sample p ( loadstatement | selectstatement )

評価される式は、データセットから Qlik Sense アプリケーションに読み込まれるレコードのパーセントではなく、読み込まれた各レコードがアプリケーションに読み込まれる確率を定義します。つまり、値 `p = 0.5` を指定するということは、レコードの合計数の 50% がロードされるということではなく、各レコードについて Qlik Sense アプリケーションにロードされる確率が 50% あるということです。

引数

| 引数 | 説明 |
| --- | --- |
| p | 0 以上 1 以下の数を評価する任意の数式。数は、指定したレコードが読み取られる確率を示します。<br><br>レコードはすべて読み取られますが、Qlik Sense にロードされるのは一部のみです。 |

## 使用に適しているケース

サンプル データを大きいテーブルから取得する場合、データ、分布、または項目内容の性質を理解するのにサンプルが有用です。データのサブセットを持ち込むため、データのロードが短時間で済み、スクリプトのテストを迅速に実施できます。`First` とは異なり、`Sample` 関数は最初の 2～3 行に限定されず、テーブル全体からデータを持ち込みます。これにより、ケースによってはデータの表示がより正確になります。

次の例は、`Sample` スクリプト プレフィックスの考えられる使用方法です。

`Sample 0.15 SQL  SELECT  * from Longtable;` `Sample(0.15) 
 LOAD * from Longtab.csv;`

## 地域の設定

特に指定のない限り、このトピックの例では次の日付書式を使用しています: MM/DD/YYYY。日付書式は、データ ロード スクリプトの `SET DateFormat` ステートメントで指定されています。既定の日付書式は、地域の設定やその他の要因により、システムによって異なる場合があります。以下の例の書式は、要件に合わせて変更できます。または、これらの例に一致するようにロード スクリプトの書式を変更できます。

App の既定の地域設定は、Qlik Sense がインストールされているコンピューターまたはサーバーの地域システム設定に基づいています。アクセスしている Qlik Sense サーバーがスウェーデンに設定されてい場合、データ ロード エディターは、日付、時間、および通貨にスウェーデンの地域設定を使用します。これらの地域の書式設定は、Qlik Sense ユーザー インターフェースに表示される言語とは関係ありません。Qlik Sense は使用しているブラウザと同じ言語で表示されます。

## 例 1 – インライン テーブルからのサンプル

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Sample.htm)

#### ロード スクリプトと結果

概要

この例では、スクリプトが、7 件のレコードを含むデータセットからのサンプルのデータセットを、インライン テーブルからの `Transactions` というテーブルへロードします。

ロード スクリプト

```
Transactions:
SAMPLE 0.3
LOAD 
* 
Inline [
id, date, amount
1, 08/30/2018, 23.56
2, 09/07/2018, 556.31
3, 09/16/2018, 5.75
4, 09/22/2018, 125.00
5, 09/22/2018, 484.21
6, 09/22/2018, 59.18
7, 09/23/2018, 177.42
];
```

結果

データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:

* `id`

* `amount`

次のメジャーを追加します。

`=sum(amount)8`

結果テーブル

| ID | 日付 | =Sum(amount) |
| --- | --- | --- |
| 2 | 09/07/2018 | 556.31 |
| 4 | 09/22/2018 | 125 |
| 1 | 08/30/2018 | 23.56 |
| 3 | 09/16/2018 | 5.75 |

この例で使用したロードの反復では、7 件のレコードはすべて読み込まれましたが、データ テーブルにロードされたのレコードは 4 件のみでした。ロードを再実行すると、異なる数値、および異なるレコードのセットがアプリケーションにロードされることになります。

## 例 2 – 自動生成されたテーブルからのサンプル

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Sample.htm)

#### ロード スクリプトと結果

概要

この例では、`Autogenerate` を使用することで、100 件のレコードのデータセットが項目 `date`、`id`、および `amount` で作成されます。ただし、`Sample` プレフィックスは 0.1 の値と併用されます。

ロード スクリプト

```
SampleData:
Sample 0.1
LOAD
RecNo() AS id,
MakeDate(2013, Ceil(Rand() * 12), Ceil(Rand() * 29)) as date,
Rand() * 1000 AS amount

Autogenerate(100);
```

結果

データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:

* `id`

* `amount`

次のメジャーを追加します:

結果テーブル

| ID | 日付 | =Sum(amount) |
| --- | --- | --- |
| 48 | 9/28/2013 | 763 |
| 20 | 5/15/2013 | 752 |
| 19 | 11/8/2013 | 657 |
| 25 | 3/24/2013 | 522 |
| 27 | 8/23/2013 | 389 |
| 81 | 6/1/2013 | 53 |
| 100 | 8/15/2013 | 17 |

この例で使用したロードの反復では、7 件のレコードが作成されたデータセットからロードされました。改めて、ロードを再実行すると、異なる数値、および異なるレコードのセットがアプリケーションにロードされることになります。

## 詳細を見る

* [Load](https://help.qlik.com/ja-JP/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/ja-JP/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Select.htm)