Pivot Tables

PivotTable

ピボット テーブル。

JSON 表現
{
  "rows": [
    {
      object (PivotGroup)
    }
  ],
  "columns": [
    {
      object (PivotGroup)
    }
  ],
  "criteria": {
    integer: {
      object (PivotFilterCriteria)
    },
    ...
  },
  "filterSpecs": [
    {
      object (PivotFilterSpec)
    }
  ],
  "values": [
    {
      object (PivotValue)
    }
  ],
  "valueLayout": enum (PivotValueLayout),
  "dataExecutionStatus": {
    object (DataExecutionStatus)
  },

  // Union field source_data can be only one of the following:
  "source": {
    object (GridRange)
  },
  "dataSourceId": string
  // End of list of possible types for union field source_data.
}
フィールド
rows[]

object (PivotGroup)

ピボット テーブル内の各行のグループ化。

columns[]

object (PivotGroup)

ピボット テーブル内での各列グループ。

criteria
(deprecated)

map (key: integer, value: object ( PivotFilterCriteria))

ソース列のオフセットごとのフィルタのマッピング(省略可)。

フィルタは、ピボット テーブルにデータを集計する前に適用されます。マップのキーはフィルタするソース範囲の列オフセットで、値はその列の条件です。

たとえば、ソースが C10:E15 の場合、0 のキーは列 C のフィルタになり、キー 1 は列 D のフィルタになります。

このフィールドは非推奨のため、filterSpecs の使用が推奨されています。

filterSpecs[]

object (PivotFilterSpec)

ピボット テーブルのデータを集計する前にソース列に適用されたフィルタ。

レスポンスには criteriafilterSpecs の両方が入力されます。更新リクエストで両方のフィールドが指定されている場合、このフィールドが優先されます。

values[]

object (PivotValue)

ピボット テーブルに含める値のリスト。

valueLayout

enum (PivotValueLayout)

値を横方向(列として)または縦方向(行として)表示するかどうか。

dataExecutionStatus

object (DataExecutionStatus)

出力専用。データソースのピボット テーブルのデータ実行ステータス。

共用体フィールド source_data。ピボット テーブルのデータのソース。 source_data は次のいずれかになります。
source

object (GridRange)

ピボット テーブルがデータを読み取る範囲。

dataSourceId

string

ピボット テーブルがデータを読み取るデータソースの ID。

PivotGroup

ピボット テーブル内の 1 つのグループ(行または列)。

JSON 表現
{
  "showTotals": boolean,
  "valueMetadata": [
    {
      object (PivotGroupValueMetadata)
    }
  ],
  "sortOrder": enum (SortOrder),
  "valueBucket": {
    object (PivotGroupSortValueBucket)
  },
  "repeatHeadings": boolean,
  "label": string,
  "groupRule": {
    object (PivotGroupRule)
  },
  "groupLimit": {
    object (PivotGroupLimit)
  },

  // Union field source can be only one of the following:
  "sourceColumnOffset": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
フィールド
showTotals

boolean

ピボット テーブルにこのグループの合計を含める場合は true に設定します。

valueMetadata[]

object (PivotGroupValueMetadata)

グループ内の値に関するメタデータ。

sortOrder

enum (SortOrder)

このグループの値を並べ替える順序。

valueBucket

object (PivotGroupSortValueBucket)

並べ替え基準とする反対側のピボット グループのバケット。指定しない場合、並べ替えはこのグループの値のアルファベット順になります。

repeatHeadings

boolean

このピボット グループの見出しを繰り返す必要がある場合は true です。これは行のグループ化に対してのみ有効で、列では無視されます。

デフォルトでは、上位レベルの見出しが同じ場合は表示されないようにして、見出しの繰り返しを最小限に抑えます。たとえば、下の 3 行目は「Q1 Mar」に対応していますが、「Q1」は前の行と重複するため表示されません。repeatHeadings を true に設定すると、「2 月」と「3 月」に対して「Q1」が繰り返されます。

+--------------+
| Q1     | Jan |
|        | Feb |
|        | Mar |
+--------+-----+
| Q1 Total     |
+--------------+
label

string

カスタマイズ可能な行/列グループに使用するラベル。たとえば、次のピボット テーブルでは、行ラベルは Region(名前は State に変更できます)、列ラベルは Product(名前は Item に変更できます)です。2017 年 12 月より前に作成されたピボット テーブルにはヘッダーラベルがありません。既存のピボット テーブルにヘッダー ラベルを追加するには、既存のピボット テーブルを削除してから、同じパラメータで新しいピボット テーブルを作成してください。

+--------------+---------+-------+
| SUM of Units | Product |       |
| Region       | Pen     | Paper |
+--------------+---------+-------+
| New York     |     345 |    98 |
| Oregon       |     234 |   123 |
| Tennessee    |     531 |   415 |
+--------------+---------+-------+
| Grand Total  |    1110 |   636 |
+--------------+---------+-------+
groupRule

object (PivotGroupRule)

この行/列グループに適用するグループルール。

groupLimit

object (PivotGroupLimit)

このピボット グループに適用する行または列数の上限。

共用体フィールド source。ピボット グループのデータソース。 source は次のいずれかになります。
sourceColumnOffset

integer

このグループ化の基となるソース範囲の列オフセット。

たとえば、ソースが C10:E15 の場合、sourceColumnOffset0 の場合、このグループは列 C を参照し、オフセット 1 は列 D を参照します。

dataSourceColumnReference

object (DataSourceColumnReference)

このグループ化のベースとなるデータソース列への参照。

PivotGroupValueMetadata

ピボット グループ内の値に関するメタデータ。

JSON 表現
{
  "value": {
    object (ExtendedValue)
  },
  "collapsed": boolean
}
フィールド
value

object (ExtendedValue)

メタデータが対応する計算値。(値が計算されるため、formulaValue は無効です)。

collapsed

boolean

値に対応するデータが閉じられている場合は true。

PivotGroupSortValueBucket

並べ替えに使用するピボット グループ内の値の情報。

JSON 表現
{
  "valuesIndex": integer,
  "buckets": [
    {
      object (ExtendedValue)
    }
  ]
}
フィールド
valuesIndex

integer

このグループ化の値の並べ替え基準とする PivotTable.values リストのオフセット。

buckets[]

object (ExtendedValue)

並べ替える値の選択元となるバケットを指定します。

たとえば、1 つの行グループと 2 つの列グループがあるピボット テーブルでは、行グループに最大 2 つの値を入れることができます。1 つ目の値は 1 つ目の列グループ内の値に対応し、2 つ目の値は 2 つ目の列グループ内の値に対応しています。値がリストされていない場合は、列グループの「総計」に基づいて行を並べ替える必要があります。値が 1 つだけ表示されている場合は、そのバケットの「合計」に相当します。

PivotGroupRule

個々の値を分解するのではなく、ソースデータ列の値のバケットを定義する PivotGroup のオプション設定。グループルールを持つ PivotGroup はソースデータの列ごとに 1 つだけ追加できますが、任意の列には、ルールを持つ PivotGroup とそうでない PivotGroup の両方を追加できます。

JSON 表現
{

  // Union field rule can be only one of the following:
  "manualRule": {
    object (ManualRule)
  },
  "histogramRule": {
    object (HistogramRule)
  },
  "dateTimeRule": {
    object (DateTimeRule)
  }
  // End of list of possible types for union field rule.
}
フィールド
共用体フィールド rulePivotGroup に適用するルール。 rule は次のいずれかになります。
manualRule

object (ManualRule)

ManualRule

histogramRule

object (HistogramRule)

HistogramRule

dateTimeRule

object (DateTimeRule)

DateTimeRule

ManualRule

ソースデータの列の値を、任意の名前のバケットに手動で整理できます。たとえば、州ごとに人口を集計するピボット テーブルは次のようになります。

+-------+-------------------+
| State | SUM of Population |
+-------+-------------------+
| AK    |               0.7 |
| AL    |               4.8 |
| AR    |               2.9 |
...
+-------+-------------------+

手動グループルールにグループのリスト(groupName = 'Central'、items = ['AL', 'AR', 'IA', ...] など)を与えることで、タイムゾーンごとに人口を集計するピボット テーブルに変換できます。なお、ソースデータにタイムゾーン列を追加してピボット テーブルを調整した場合も、同様の効果が得られます。

+-----------+-------------------+
| Time Zone | SUM of Population |
+-----------+-------------------+
| Central   |             106.3 |
| Eastern   |             151.9 |
| Mountain  |              17.4 |
...
+-----------+-------------------+
JSON 表現
{
  "groups": [
    {
      object (ManualRuleGroup)
    }
  ]
}
フィールド
groups[]

object (ManualRuleGroup)

グループ名と、各グループ名にマッピングされているソースデータの対応する項目のリスト。

ManualRuleGroup

グループ名と、この名前のグループに配置する必要があるソースデータの項目リスト。

JSON 表現
{
  "groupName": {
    object (ExtendedValue)
  },
  "items": [
    {
      object (ExtendedValue)
    }
  ]
}
フィールド
groupName

object (ExtendedValue)

グループ名。文字列で指定する必要があります。特定の ManualRule 内の各グループには一意のグループ名が必要です。

items[]

object (ExtendedValue)

このグループに配置するソースデータ内の項目。各項目には、文字列、数値、ブール値を指定できます。アイテムは、1 つの ManualRule 内の最大 1 つのグループに表示できます。どのグループにも表示されないアイテムは、単独で表示されます。

HistogramRule

ソースデータ列の数値を、一定サイズのバケットに整理できます。HistogramRule.start から HistogramRule.end のすべての値がサイズ HistogramRule.interval のグループに配置されます。また、HistogramRule.start の下のすべての値は 1 つのグループに配置され、HistogramRule.end を超える値はすべて別のグループに配置されます。HistogramRule.interval のみが必須ですが、HistogramRule.startHistogramRule.end の両方が指定されている場合は、HistogramRule.startHistogramRule.end より小さくする必要があります。たとえば、年齢別の平均購入金額を示すピボット テーブルには 50 行以上の行があります。

+-----+-------------------+
| Age | AVERAGE of Amount |
+-----+-------------------+
| 16  |            $27.13 |
| 17  |             $5.24 |
| 18  |            $20.15 |
...
+-----+-------------------+

HistogramRule.start が 25、HistogramRule.interval が 20、HistogramRule.end が 65 のヒストグラム グループ ルールを適用すると、次のようなピボット テーブルに変換できます。

+-------------+-------------------+
| Grouped Age | AVERAGE of Amount |
+-------------+-------------------+
| < 25        |            $19.34 |
| 25-45       |            $31.43 |
| 45-65       |            $35.87 |
| > 65        |            $27.55 |
+-------------+-------------------+
| Grand Total |            $29.12 |
+-------------+-------------------+
JSON 表現
{
  "interval": number,
  "start": number,
  "end": number
}
フィールド
interval

number

作成されるバケットのサイズ。正の値を指定してください。

start

number

アイテムを一定サイズのバケットに入れる最小値。start 以下の値は 1 つのバケットにまとめられます。このフィールドは省略可能です。

end

number

一定サイズのバケットに商品アイテムが入れられる最大値。指定した値を超える値は 1 つのバケットにまとめられます。このフィールドは省略可能です。

DateTimeRule

ソースデータ列の日時の値を、日時の値の選択した部分に基づいてバケットに整理できます。たとえば、販売取引を日付別に示したピボット テーブルについて考えてみましょう。

+----------+--------------+
| Date     | SUM of Sales |
+----------+--------------+
| 1/1/2017 |      $621.14 |
| 2/3/2017 |      $708.84 |
| 5/8/2017 |      $326.84 |
...
+----------+--------------+

DateTimeRuleType が YEAR_MONTH の日時グループルールを適用すると、次のピボット テーブルが作成されます。

+--------------+--------------+
| Grouped Date | SUM of Sales |
+--------------+--------------+
| 2017-Jan     |   $53,731.78 |
| 2017-Feb     |   $83,475.32 |
| 2017-Mar     |   $94,385.05 |
...
+--------------+--------------+
JSON 表現
{
  "type": enum (DateTimeRuleType)
}
フィールド
type

enum (DateTimeRuleType)

適用する日時グループ化のタイプ。

DateTimeRuleType

使用可能な日時グループ化ルールの種類。このドキュメントでは、スプレッドシートの言語 / 地域が「en-US」であることを前提としていますが、一部のルールタイプでは、日付と時刻の実際のレンダリングではスプレッドシートの言語 / 地域が使用されます。

列挙型
DATE_TIME_RULE_TYPE_UNSPECIFIED デフォルトのタイプです。使用しないでください。
SECOND 日付を 0 ~ 59 秒でグループ化します。
MINUTE 0 ~ 59 の範囲で日付を分単位でグループ化します。
HOUR 24 時間制を使用して、0 ~ 23 の範囲で日付をグループ化します。
HOUR_MINUTE 24 時間制を使用して日付を時間と分でグループ化します(例: 19:45)。
HOUR_MINUTE_AMPM 12 時間制を使用して日付を時間と分でグループ化します(例:午後 7 時 45 分)。AM / PM の指定は、スプレッドシートの言語 / 地域に基づいて翻訳されます。
DAY_OF_WEEK 日曜日など、曜日ごとに日付をグループ化します。曜日は、スプレッドシートの言語 / 地域に基づいて翻訳されます。
DAY_OF_YEAR 日付を 1 ~ 366 の範囲内でグループ化します。2 月 29 日以降の日付は、うるう年とうるう年以外の場合とで、異なるバケットに分類されます。
DAY_OF_MONTH 日付を 1 ~ 31 の範囲で日ごとにグループ化します。
DAY_MONTH 日付は日と月でグループ化します(例: 11 月 22 日)。月はスプレッドシートの言語 / 地域に基づいて翻訳されます。
MONTH 日付を月別にグループ化します(11 月など)。月はスプレッドシートの言語 / 地域に基づいて翻訳されます。
QUARTER 日付は四半期ごとにグループ化します。たとえば、第 1 四半期(1 月~ 3 月を表す)などです。
YEAR 日付を年別にグループ化します(例: 2008)。
YEAR_MONTH 日付を年と月でグループ化します(例: 2008-11 月)。月は、スプレッドシートの言語 / 地域に基づいて翻訳されます。
YEAR_QUARTER 年や四半期ごとに日付をグループ化します(「2008 Q4」など)。
YEAR_MONTH_DAY 年、月、日で日付をグループ化します(例: 2008-11-22)。

PivotGroupLimit

ピボット グループ内の行または列数の上限。

JSON 表現
{
  "countLimit": integer,
  "applyOrder": integer
}
フィールド
countLimit

integer

上限数。

applyOrder

integer

グループの上限がピボット テーブルに適用される順序。

ピボット グループの制限は、順序番号が小さいものから高いものの順に適用されます。注文番号は 0 の連続する整数に正規化されます。

書き込みリクエストの場合、適用する注文を完全にカスタマイズするには、すべてのピボット グループの制限に、このフィールドに一意の番号を設定する必要があります。それ以外の場合、順序は PivotTable.rows リストのインデックス、PivotTable.columns リストの順に決定されます。

PivotFilterCriteria

ピボット テーブルの行を表示または非表示にする条件。

JSON 表現
{
  "visibleValues": [
    string
  ],
  "condition": {
    object (BooleanCondition)
  },
  "visibleByDefault": boolean
}
フィールド
visibleValues[]

string

含める必要がある値。ここに記載されていない値は除外されます。

condition

object (BooleanCondition)

条件。値を表示するために true でなければなりません。(visibleValues はこれをオーバーライドしません。値がリストされていても、条件を満たしていない場合は非表示になります)。

A1 表記の範囲を参照する条件値は、ピボット テーブルのシートを基準にして評価されます。参照は絶対に扱われるため、ピボット テーブルには入力されません。たとえば、「ピボット テーブル 1」の条件値 =A1'Pivot Table 1'!$A$1 として扱われます。

ピボット テーブルのソースデータは、列見出し名で参照できます。たとえば、ソースデータに「Revenue」と「Cost」という名前の列があり、タイプが NUMBER_GREATER で値が =Cost の「Revenue」列に条件が適用されている場合、「Revenue」>「Cost」の列のみが含まれます。

visibleByDefault

boolean

デフォルトで値を表示するかどうかを指定します。true の場合、visibleValues は無視され、condition を満たすすべての値(指定されている場合)が表示されます。false の場合、visibleValues に含まれ、condition を満たす値が表示されます。

PivotFilterSpec

特定のソース列のオフセットに関連付けられたピボット テーブルのフィルタ条件。

JSON 表現
{
  "filterCriteria": {
    object (PivotFilterCriteria)
  },

  // Union field source can be only one of the following:
  "columnOffsetIndex": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
フィールド
filterCriteria

object (PivotFilterCriteria)

列の条件。

共用体フィールド source。このフィルタが適用されるソース列。source は次のいずれかになります。
columnOffsetIndex

integer

ソース範囲のゼロベースの列オフセット。

dataSourceColumnReference

object (DataSourceColumnReference)

データソース列への参照。

PivotValue

ピボット テーブル内の値の計算方法の定義。

JSON 表現
{
  "summarizeFunction": enum (PivotValueSummarizeFunction),
  "name": string,
  "calculatedDisplayType": enum (PivotValueCalculatedDisplayType),

  // Union field value can be only one of the following:
  "sourceColumnOffset": integer,
  "formula": string,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field value.
}
フィールド
summarizeFunction

enum (PivotValueSummarizeFunction)

値を集計する関数。formula が設定されている場合、サポートされる値は SUMCUSTOM のみです。sourceColumnOffset が設定されている場合、CUSTOM はサポートされません。

name

string

値に使用する名前。

calculatedDisplayType

enum (PivotValueCalculatedDisplayType)

指定すると、別のピボット値を使用した計算の結果としてピボット値が表示されることを示します。たとえば、computeType が PERCENT_OF_GRAND_TOTAL として指定されている場合、すべてのピボット値が総計に対する割合として表示されます。スプレッドシート エディタでは、これはピボット テーブルの値セクションに [表示方法] と表示されます。

共用体フィールド value。ピボット テーブルの値に使用するデータ。必ず 1 つの値を設定する必要があります。value は次のいずれかになります。
sourceColumnOffset

integer

この値の読み取り元となるソース範囲の列オフセット。

たとえば、ソースが C10:E15 の場合、sourceColumnOffset0 の場合、この値は列 C を参照し、オフセット 1 は列 D を参照します。

formula

string

値を計算するためのカスタム数式。数式の先頭は「=」にする必要があります。

dataSourceColumnReference

object (DataSourceColumnReference)

この値が読み取られるデータソース列への参照。

PivotValueSummarizeFunction

ピボット値を要約する関数。

列挙型
PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED デフォルトの設定では、使用しないでください。
SUM SUM 関数に対応します。
COUNTA COUNTA 関数に対応します。
COUNT COUNT 関数に対応します。
COUNTUNIQUE COUNTUNIQUE 関数に対応します。
AVERAGE AVERAGE 関数に対応します。
MAX MAX 関数に対応します。
MIN MIN 関数に対応します。
MEDIAN MEDIAN 関数に対応します。
PRODUCT PRODUCT 関数に対応します。
STDEV STDEV 関数に対応します。
STDEVP STDEVP 関数に対応します。
VAR VAR 関数に対応します。
VARP VARP 関数に対応します。
CUSTOM 数式をそのまま使用することを示します。PivotValue.formula が設定されている場合のみ有効です。
NONE 値がすでに要約されていて、要約関数が明示的に指定されていないことを示します。値がすでに要約されている Looker データソースのピボット テーブルに使用されます。

PivotValueCalculatedDisplayType

表示するピボット値の計算方法。

列挙型
PIVOT_VALUE_CALCULATED_DISPLAY_TYPE_UNSPECIFIED デフォルト値。使用しないでください。
PERCENT_OF_ROW_TOTAL ピボット値を、行の合計値に対するパーセンテージとして表示します。
PERCENT_OF_COLUMN_TOTAL ピボット値を、列の合計値に対する割合として表示します。
PERCENT_OF_GRAND_TOTAL 合計値に対するピボット値の割合が表示されます。

PivotValueLayout

ピボット値のレイアウト。

列挙型
HORIZONTAL 値は横方向に(列として)配置されます。
VERTICAL 値は縦方向(行として)に配置されます。