メインコンテンツまでスキップ

参加する

指定された結合式を使用して、別のDataFrameと結合します。

構文

join(other: "DataFrame", on: Optional[Union[str, List[str], Column, List[Column]]] = None, how: Optional[str] = None)

パラメーター

パラメーター

Type

説明

other

データフレーム

接合部の右側。

on

文字列、リスト、または列(省略可能)

結合列名を表す文字列、列名のリスト、結合式(列)、または列のリスト。on結合列の名前を示す文字列または文字列のリストである場合、その列は両側に存在する必要があり、等結合が実行されます。

how

文字列、オプション

デフォルトはinner 。次のいずれかである必要があります: innercrossouterfullfullouterfull_outerleftleftouterleft_outerrightrightouterright_outersemileftsemileft_semiantileftantiおよびleft_anti

戻り値

DataFrame: 結合されたDataFrame 。

Python
import pyspark.sql.functions as sf
from pyspark.sql import Row
df = spark.createDataFrame([Row(name="Alice", age=2), Row(name="Bob", age=5)])
df2 = spark.createDataFrame([Row(name="Tom", height=80), Row(name="Bob", height=85)])

df.join(df2, "name").show()
# +----+---+------+
# |name|age|height|
# +----+---+------+
# | Bob| 5| 85|
# +----+---+------+

joined = df.join(df2, df.name == df2.name, "outer").sort(sf.desc(df.name))
joined.show()
# +-----+----+----+------+
# | name| age|name|height|
# +-----+----+----+------+
# | Bob| 5| Bob| 85|
# |Alice| 2|NULL| NULL|
# | NULL|NULL| Tom| 80|
# +-----+----+----+------+

df.alias("a").join(
df.alias("b"), sf.col("a.name") == sf.col("b.name"), "outer"
).sort(sf.desc("a.name")).select("a.name", "b.age").show()
# +-----+---+
# | name|age|
# +-----+---+
# | Bob| 5|
# |Alice| 2|
# +-----+---+
このページの見出し