Kdbplus-q-language-dictionaries
提供:Dev Guides
Q言語-辞書
辞書は、テーブルを作成するための基盤を提供するリストの拡張です。 数学用語では、辞書は
「ドメイン→範囲」
または一般的に(短い)作成
「キー→値」
要素間の関係。
辞書は、ハッシュテーブルとほぼ同等のキーと値のペアの順序付きコレクションです。 ディクショナリは、位置対応を介したドメインリストと範囲リスト間の明示的なI/Oアソシエーションによって定義されるマッピングです。 辞書の作成には「xkey」プリミティブを使用します(!)
最も基本的な辞書は、単純なリストを単純なリストにマップします。
Input (I) | Output (O) |
---|---|
`Name | `John |
`Age | 36 |
`Sex | “M” |
Weight | 60.3 |
見上げる
入力値に対応するディクショナリ出力値を見つけることは、入力を「調べる」と呼ばれます。
動詞での検索@
辞書の操作
修正とアップサート
リストと同様に、ディクショナリのアイテムはインデックス付き割り当てを介して変更できます。
辞書は、インデックスの割り当てによって拡張できます。
検索を使用した逆引き(?)
検索(?)演算子は、要素の範囲をそのドメイン要素にマッピングすることにより、逆ルックアップを実行するために使用されます。
リストの要素が一意でない場合、 find はドメインリストから最初の項目マッピングを返します。
エントリの削除
辞書からエントリを削除するには、* delete()関数*を使用します。 ()の左側のオペランドは辞書であり、右側のオペランドはキー値です。
最初のオペランドが変数の場合、_の左側に空白が必要です。
列辞書
列辞書は、テーブル作成の基本です。 次の例を考慮してください-
辞書の反転
列ディクショナリを反転することの最終的な効果は、単にインデックスの順序を逆にすることです。 これは、行と列の転置と論理的に同等です。
列辞書の反転
辞書の転置は、単項反転演算子を適用することにより取得されます。 次の例を見てください-
反転した列辞書の反転
辞書を2回転置すると、元の辞書が取得され、