JoinAcross

JoinAcross[{a1,a2,},{b1,b2,},key]

key に関連付けられている値が同じである,連想 aibjのペアを結合することによって得られる連想のリストを与える.

JoinAcross[{a1,a2,},{b1,b2,},{key1,key2,}]

すべてのキー keyiに関連付けられている値が同じである場合にのみ,連想のペアを結合する.

JoinAcross[{a1,a2,},{b1,b2,},keyakeyb]

aikeyaに関連付けられている値が,bjkeybに関連付けられているものと同じである,連想のペア aibjを結合する.

JoinAcross[{a1,a2,},{b1,b2,},{keya1keyb1,}]

対応するペアの値が合致する,連想のペアを結合する.

JoinAcross[alist,blist,keyspec,"joinspec"]

joinspec を使って,欠落している要素を含む連想がいつ生成されるようにするかを決定する.

詳細とオプション

  • JoinAcross[{a1,a2,},{b1,b2,},keyspec]は,事実上SQL JOINと同じものを実装し,keyspec で指定された列間で,行 aibj を持つ2つの表を結合する.
  • JoinAcrossのキー指定は,それが文字列でなければKeyで囲まなければならない.
  • JoinAcrossは事実上,フィルタを掛けられたFlatten[Outer[Join,alist,blist]]を生成する.
  • デフォルトでJoinAcrossは,SQL的には,「内部結合」する.
  • 次の形式の"joinspec"が,連想のペア aibjに異なる動作を指定する.
  • "Inner"値がマッチする aibjのみを保つ(デフォルト)
    "Left"マッチする bjのない aiを許す
    "Right"マッチする ajのない biを許す
    "Outer"マッチしない aibjの両方を許す
  • 対応する値がない場合には,代りにMissing["Unmatched"]が使われる.
  • オプションKeyCollisionFunctionを使って,結合するようには指定されていないにもかかわらず同じキーを持つ要素 aiおよび bjをどのように扱うかを指定することができる.
  • KeyCollisionFunctionで使用可能な設定
  • None両方の要素を除去する
    Left左要素だけを含める(デフォルト)
    Right右要素だけを含める
    funcfunc を適用して新たなキーペアを生成する

例題

すべて開くすべて閉じる

  (11)

指定されたキーに対して同じ値を持つ2つの連想を結合する:

指定されたキーに対して同じ値を持つ連想ペアを結合する:

複数のキーを使って結合する:

右側と左側を異なるキーで結合する:

"Inner"結合(デフォルト)では,マッチする連想のみが繋がれる:

"Left"結合では,左側のリストからのマッチしない項目も含まれる:

"Right"結合では,右側のリストからのマッチしない項目も含まれる:

"Outer"結合では,マッチしないすべての項目が含まれる:

キー b のマッチングが結合に使われないときは,デフォルトで,このキーに対して左側の値が使われる:

KeyCollisionFunctionを使って,衝突するどちらのキーの値を返すかを指定する:

衝突するキーの代りに新しいキーを生成する:

衝突するキーを除く:

アプリケーション  (1)

考えられる問題  (1)

キー a とキー b は結合のために使われていても衝突する:

キーが衝突すると,デフォルトで左側のキーからの値が取られる:

衝突したキーのどちらの値を取るか指定する:

衝突したキーの右側の値を明確に取る:

Wolfram Research (2014), JoinAcross, Wolfram言語関数, https://reference.wolfram.com/language/ref/JoinAcross.html (2015年に更新).

テキスト

Wolfram Research (2014), JoinAcross, Wolfram言語関数, https://reference.wolfram.com/language/ref/JoinAcross.html (2015年に更新).

CMS

Wolfram Language. 2014. "JoinAcross." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2015. https://reference.wolfram.com/language/ref/JoinAcross.html.

APA

Wolfram Language. (2014). JoinAcross. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/JoinAcross.html

BibTeX

@misc{reference.wolfram_2024_joinacross, author="Wolfram Research", title="{JoinAcross}", year="2015", howpublished="\url{https://reference.wolfram.com/language/ref/JoinAcross.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_joinacross, organization={Wolfram Research}, title={JoinAcross}, year={2015}, url={https://reference.wolfram.com/language/ref/JoinAcross.html}, note=[Accessed: 22-November-2024 ]}