Ich bin mit dem folgenden Problem konfrontiert: Ich habe eine Liste, die ich mit den Elementen einer Spalte in einem Datenrahmen (acc_name) vergleichen muss. Ich verwende den folgenden Looping-Funktion, aber es gibt mir nur 1 Datensatz, wenn es mir 30. Mit PysparkFür Looping-Fehler in pyspark
bs_list =
['AC_E11','AC_E12','AC_E13','AC_E135','AC_E14','AC_E15','AC_E155','AC_E157',
'AC_E16','AC_E163','AC_E165','AC_E17','AC_E175','AC_E180','AC_E185', 'AC_E215','AC_E22','AC_E225','AC_E23','AC_E23112','AC_E235','AC_E245','AC_E258','AC_E25','AC_E26','AC_E265','AC_E27','AC_E275','AC_E31','AC_E39','AC_E29']
for i in bs_list:
bs_acc1 = (acc\
.filter(i == acc.acc_name)
.select(acc.acc_name,acc.acc_description)
)
die bs_list Elemente sind Teilmenge von acc_name Spalte bieten sollte. Ich versuche, ein neues DF zu schaffen, das die folgenden 2 Spalten acc_name, acc_description haben wird. Es enthält nur Details des Wertes der Elemente in der Liste bs_list Bitte lassen Sie mich wissen, wo ich falsch liege?
Sie versuchen, die RDD für Elemente in der Liste zu iterieren. Versuchen Sie stattdessen, die Liste mit jedem Element in der RDD zu wiederholen. – Dandekar