给出一个按日期排序的数据框
"trucks"
我想创建一个列,以计算到目前为止行上的自定义函数;下图显示了中位数:
SELECT "listings".*
FROM "listings"
JOIN (
SELECT 'Car' as "vtype", "id", "user_id"
FROM "cars"
UNION ALL
SELECT 'Truck' as "vtype", "id", "user_id"
FROM "trucks"
) vehs ON vehs."id" = "listings"."listable_id" AND "listings"."listable_type" = vehs."vtype" AND vehs."user_id" = 119
我可以通过date val
2004-01-01 6
2004-01-02 6
2004-01-03 1
2004-01-04 5
2004-01-05 2
2004-01-06 3
函数执行此操作吗?当然,我可以做一个双循环,但这有很多开销。使用apply()通常会快得多,但是执行date val median_so_far
2004-01-01 6 6
2004-01-02 6 6
2004-01-03 1 6
2004-01-04 5 5.5
2004-01-05 2 5
2004-01-06 3 4
时,函数.apply()
仅获得df['val'].apply(f)
作为输入,而不是日期/行索引,因此我无法确定按时间顺序更早的行集。