次のようなSQLの「最初の値」ウィンドウ関数と同等の何かをRで実行しようとしています。
select *, first_value(value3) over (partition by value1, value2 order by value5 desc)
from df
sqldf / RPostgreSQLのようなものを使用するためにデータベースを作成する必要なしにRでこれを行う良い方法はありますか?
私はここでの答えのような他のいくつかの例を見てきました:sqldfのグループごとの累積合計?
しかし、ウィンドウ内の順序が重要な関数でそれを行う方法を理解するのに問題があります。もう1つは、最大500K行で作業しているため、パフォーマンスが問題になることです。
編集:ここに例があります:
item_id rental_date customer_id
I001 10/20/2012 1
I002 10/05/2012 4
I001 10/15/2012 3
I004 10/19/2012 1
I001 10/11/2012 6
I002 9/15/2012 5
I004 10/13/2012 10
I001 9/30/2012 4
特定のアイテムを毎月レンタルする最初の顧客をどのように決定しますか?