たとえば、6 月 15 日に始まり翌月 15 日に終わる夏休みなどを除いて、たとえば日と月に基づいてデータテーブルからいくつかの行を除外しようとしています。Date に基づいてそれらの日を抽出できますが、as.Date 関数の操作が非常に遅いため、Month と Day に個別の整数列があり、それらのみを使用して実行したいと考えています。
指定されたエントリを選択するのは簡単です
DT[Month==6][Day>=15]
DT[Month==7][Day<=15]
data.tables
2つ(元のものと私が選択したもの)の「違い」を作る方法はありますか?(サブセット化しないのはなぜですか?単純なものが欠けているのかもしれませんが、10/6、31/7のような日を除外したくありません。)
私はjoinでそれを行う方法を知っていますが、毎日しかありません
setkey(DT, Month, Day)
DT[-DT[J(Month,Day), which= TRUE]]
より一般的な方法でそれを解決する方法を誰かが助けることができますか?