Я только что объединил два фрейма данных в pyspark, и вместо того, чтобы объединить строки с одинаковыми датами, он сложил их друг на друга следующим образом: df1 =
+----------+------------+--------------+
| date| bounceCount| captureCount|
+----------+------------+--------------+
| 20190518| 2| null|
| 20190521| 1| null|
| 20190519| 1| null|
| 20190522| 1| null|
+----------+------------+--------------+
df2 =
+----------+-------------+-------------+
| date| captureCount| bounceCount|
+----------+-------------+-------------+
| 20190516| null| 3|
| 20190518| null| 2|
| 20190519| null| 1|
| 20190524| null| 5|
+----------+-------------+-------------+
union =
+----------+------------+--------------+
| date| bounceCount| captureCount|
+----------+------------+--------------+
| 20190518| 2| null|
| 20190521| 1| null|
| 20190519| 1| null|
| 20190522| 1| null|
| 20190516| null| 3|
| 20190518| null| 2|
| 20190519| null| 1|
| 20190524| null| 5|
+----------+------------+--------------+
Я бы хотел сгруппировать его так, чтобы строки с одинаковыми датами объединялись с правильными значениями bounceCount и captureCount:
+----------+------------+--------------+
| date| bounceCount| captureCount|
+----------+------------+--------------+
| 20190518| 2| 2|
| 20190521| 1| null|
| 20190519| 1| 1|
| 20190522| 1| null|
| 20190516| null| 3|
| 20190524| null| 5|
+----------+------------+--------------+
Я пытался соединить их по-разному и сгруппировать фрейм данных по-разному, но я не могу понять это. Я также буду прикреплять этот фрейм данных с несколькими другими столбцами, поэтому я хотел бы знать, как лучше всего это сделать. Кто-нибудь знает простой способ сделать это?