Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Une-se a outro DataFrame, usando a expressão de junção fornecida.
Sintaxe
join(other: "DataFrame", on: Optional[Union[str, List[str], Column, List[Column]]] = None, how: Optional[str] = None)
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
other |
DataFrame | Lado direito da junção. |
on |
str, list ou Column, opcional | uma cadeia de caracteres para o nome da coluna de junção, uma lista de nomes de coluna, uma expressão de junção (Coluna) ou uma lista de Colunas. Se on for uma cadeia de caracteres ou uma lista de cadeias de caracteres que indicam o nome das colunas de junção, as colunas deverão existir em ambos os lados e isso executará uma junção de equi. |
how |
str, opcional | padrão inner. Deve ser um dos seguintes: inner, , cross, outer, full, fullouter, full_outer, left, leftouter, left_outer, right, rightouter, , right_outer, semi, , leftsemi, , left_semi, , antie leftantileft_anti. |
Devoluções
DataFrame: DataFrame ingressado.
Exemplos
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|
# +-----+---+