我正在使用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"])
我在申请时得到df.show()
:
+---+-----+
|day|price|
+---+-----+
| 1| 33.3|
| 2| 31.1|
| 3| 51.2|
| 4| 21.3|
+---+-----+
这很好。我想要另一列包含价格列的日常收益,即类似
(price(day2)-price(day1))/(price(day1))
经过大量研究,我被告知这是通过应用pyspark.sql.window
功能最有效地完成的,但我无法看到如何。