2017-09-26 1 views
-1

Ich habe diesen Datenrahmen Ich werde DF1 nennen:Spalt mit unterschiedlicher Länge als neue Spalte in PySpark Datenrahmen

enter image description here

ich den zweiten Datenrahmen habe, DF2 (mit nur 3 Zeilen):

enter image description here

ich möchte eine neue Spalte in DF1 erstellen ich nenne wird total_population_by_year1 wo:

Gesamt _population_by_year1 = (der Inhalt von DF2 wenn Jahr DF1 == Jahr DF2) Mit anderen Worten, die neuen Spaltenzeilen werden mit der Gesamtpopulation für jedes Jahr gefüllt.

Was ich bisher getan haben:

df_tg = DF2.join(DF1[DF1.total_population_by_year == 
DF1.Year], ["Year", "Level_One_ICD", 
"total_patient_Level1_by_year"]) 

Dies gibt einen Fehler zurück.

Einige Ideen, damit dies funktioniert?

Antwort

0

Sie können dies versuchen:

DF2 = DF2.toDF(['Year_2','total_population_by_year']) 
DF1 = DF1.join(DF2, DF1.Year == DF2.Year_2).drop('Year_2') 
Verwandte Themen