JoinAcross[{a1,a2,…},{b1,b2,…},keyspec]
keyspec で指定される値が一致する,連想 aiと bjのペアを結合することによって得られる連想のリストを与える.
JoinAcross[tab1,tab2,keyspec]
keyspec に従って2つの表形式オブジェクトを結合する.
JoinAcross[prefix1obj1,prefix2obj2,keyspec]
ExtendedKey[prefixi,ckeyij]を使って objiのキーに prefixiを前置する.
JoinAcross[alist,blist,keyspec,"joinspec"]
joinspec を使って,欠落している要素を含む連想がいつ生成されるようにするかを決定する.


JoinAcross
JoinAcross[{a1,a2,…},{b1,b2,…},keyspec]
keyspec で指定される値が一致する,連想 aiと bjのペアを結合することによって得られる連想のリストを与える.
JoinAcross[tab1,tab2,keyspec]
keyspec に従って2つの表形式オブジェクトを結合する.
JoinAcross[prefix1obj1,prefix2obj2,keyspec]
ExtendedKey[prefixi,ckeyij]を使って objiのキーに prefixiを前置する.
JoinAcross[alist,blist,keyspec,"joinspec"]
joinspec を使って,欠落している要素を含む連想がいつ生成されるようにするかを決定する.
詳細とオプション


- JoinAcross[{a1,a2,…},{b1,b2,…},keyspec]は,事実上SQL JOINと同じものを実装し,keyspec で指定された列間で,行 ai と bj を持つ2つの表を結合する.
- JoinAcross[{a1,a2,…},{b1,b2,…},keyspec]の keyspec は,以下のいずれかでよい.
-
key key に関連付けられた値が等しい aiと bjを結合する {key1,key2,…} 各 keyiに関連付けられた値はすべて、マッチする各ペアで等しくなければならない keyakeyb aiの keyaに関連付けられた値は bjの keybに関連付けられた値と等しくなければならない {keya1keyb1,keya2keyb2,…} ai の keyaiに関連付けられた値と bjの keybjに関連付けられた値をマッチする func func[ai,bj]がTrueの時は常に,aiと bjのペアとを結合する - JoinAcross[{a1,a2,…},{b1,b2,…},keyspec]の keyspec は,事実上,以下の関数で置き換えられる.
-
key #1[key]===#2[key]& {key1,key2,…} #1[key1]===#2[key1]&[key2]===#2[key2]&&…& keyakeyb #1[keya]===#2[key2]& {keya1keyb1,keya2keyb2,…} #1[keya1]===#2[keyb1]&[keya2]===#2[keyb2]&&…& - JoinAcrossのキー指定は,それが文字列でなければKeyで囲まなければならない.
- JoinAcrossは事実上,フィルタを掛けられたFlatten[Outer[Join,alist,blist]]を生成する.
- デフォルトでJoinAcrossは,SQL的には,「内部結合」する.
- 次の形式の"joinspec"が,連想のペア aiと bjに異なる動作を指定する.
-
"Inner" 値がマッチする aiと bjのみを保つ(デフォルト) "Left" マッチする bjのない aiを許す "Right" マッチする ajのない biを許す "Outer" マッチしない aiと bjの両方を許す - 対応する値がない場合には,代りにMissing["Unmatched"]が使われる.
- JoinAcross[{a1,…},{b1,…},{},"joinspec"]と JoinAcross[{a1,…},{b1,…},True&,"joinspec"]は,事実上,Outer[Join,{a1,…},{b1,…}]都等しい. すべての aiとすべての bjがマッチするので,"joinspec"は無視される.
- オプションKeyCollisionFunctionを使って,結合するようには指定されていないにもかかわらず同じキーを持つ要素 aiおよび bjをどのように扱うかを指定することができる.
- KeyCollisionFunctionで使用可能な設定
-
None 両方の要素を除去する Left 左要素だけを含める(デフォルト) Right 右要素だけを含める func func を適用して新たなキーペアを生成する
例題
すべて開く すべて閉じる例 (10)
Tabularオブジェクトを使って同じことを行う:
"Inner"結合(デフォルト)では,マッチする連想のみが繋がれる:
"Left"結合では,左側のリストからのマッチしない項目も含まれる:
スコープ (2)
オプション (3)
InterpretationBox[$Line = 0; Null] (3)
キー b のマッチングが結合に使われないときは,デフォルトで,このキーに対して左側の値が使われる:
KeyCollisionFunctionを使って,衝突するどちらのキーの値を返すかを指定する:
アプリケーション (1)
特性と関係 (2)
関連するガイド
-
▪
- 連想 ▪
- 構造化されたデータ集合の計算 ▪
- 表形式の変換 ▪
- データ集合に対するデータベース様の操作
テキスト
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_2025_joinacross, author="Wolfram Research", title="{JoinAcross}", year="2015", howpublished="\url{https://reference.wolfram.com/language/ref/JoinAcross.html}", note=[Accessed: 14-September-2025]}
BibLaTeX
@online{reference.wolfram_2025_joinacross, organization={Wolfram Research}, title={JoinAcross}, year={2015}, url={https://reference.wolfram.com/language/ref/JoinAcross.html}, note=[Accessed: 14-September-2025]}