używam pySpark
i utworzyły mój dataframe z dwóch kolumn reprezentujących codziennie cen aktywów w następujący sposób:Zastosowanie funkcji okna do obliczenia różnic w pySpark
ind = sc.parallelize(range(1,5))
prices = sc.parallelize([33.3,31.1,51.2,21.3])
data = ind.zip(prices)
df = sqlCtx.createDataFrame(data,["day","price"])
uzyskać po zastosowaniu df.show()
:
+---+-----+
|day|price|
+---+-----+
| 1| 33.3|
| 2| 31.1|
| 3| 51.2|
| 4| 21.3|
+---+-----+
Co jest w porządku i wszystko. Chciałbym mieć inną kolumnę zawierającą dnia na dzień powrotów kolumnie cenowej, czyli coś podobnego
(price(day2)-price(day1))/(price(day1))
Po wielu badań, jak mi powiedziano, że jest to najbardziej skutecznie osiągnięte przez nałożeniem pyspark.sql.window
funkcji, ale nie jestem w stanie zobaczyć, jak.
Witam. Dzięki! To bardzo przydatne. A propos, co robi funkcja "oświetlona"? –
'świeci' - Tworzy kolumnę wartości literalnej - https://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.functions.lit – Oleksiy
Cześć Oleksiy, okay, dzięki ! –