Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Junta-se a outro DataFrame, usando a expressão de junção dada.
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 para o nome da coluna de junção, uma lista de nomes de colunas, uma expressão de junção (Coluna) ou uma lista de Colunas. Se on for uma cadeia ou uma lista de cadeias que indicam o nome da(s) coluna(s) de junção, a(s) coluna(s) devem existir em ambos os lados, e isto realiza uma união equi-join. |
how |
STR, opcional | padrão inner. Deve ser um de: inner, cross, outer, fullfullouter, , full_outerleft, leftouterleft_outerright, rightouter, right_outersemileftsemileft_semiantie . leftantileft_anti |
Devoluções
DataFrame: Juntou-se ao DataFrame.
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|
# +-----+---+