csatlakozás

Egy másik DataFrame-hez csatlakozik a megadott illesztési kifejezés használatával.

Szemantika

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

Paraméterek

Paraméter Típus Leírás
other DataFrame Az illesztés jobb oldala.
on str, lista vagy oszlop, nem kötelező az illesztőoszlop nevének sztringje, az oszlopnevek listája, az illesztés kifejezése (Oszlop) vagy az Oszlopok listája. Ha on egy sztring vagy az illesztési oszlop(ok) nevét jelző sztringek listája, az oszlop(ok) mindkét oldalon létezniük kell, és ez egyenlő illesztést végez.
how str, nem kötelező alapértelmezett inner. A következő egyiknek kell lennie: inner, cross, outer, full, fullouter, full_outer, leftleftouterleft_outerrightrightouter, right_outer, semi, leftsemi, left_semiantileftanti és .left_anti

Visszatérítések

DataFrame: Csatlakoztatott DataFrame.

Examples

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|
# +-----+---+