Using Pyspark
use zipWithIndex
function to generate the index column and use it join.
Example:
from pyspark.sql.functions import *
from pyspark.sql.types import *
df= spark.createDataFrame([('Emma Larter',34),('Mia Junior',59),('Sophia',32),('James',40)],['Name','Age'])
df_ind = spark.createDataFrame(df.rdd.zipWithIndex(),['val','ind'])
Salary = [35000, 24000, 55000, 40000]
df_salary = spark.createDataFrame(spark.createDataFrame(Salary, IntegerType()).rdd.zipWithIndex(),['val1','ind'])
df_ind.join(df_salary,['ind']).select("val.*","val1.*").drop('ind').show()
#+-----------+---+-----+
#| Name|Age|value|
#+-----------+---+-----+
#|Emma Larter| 34|35000|
#| Mia Junior| 59|24000|
#| Sophia| 32|55000|
#| James| 40|40000|
#+-----------+---+-----+