我有一個關於從R中的數據框中搜索和查找值的問題。假設我有一大堆不同列的數據框,並且數據中有一部分框架如:在數據框中搜索最近的值
Instrument | Time | Microsecond
-------------------------------------------
.... | .... | ....
-------------------------------------------
ABC | 10:32:40 | 420
-------------------------------------------
ABC | 10:32:40 | 422
-------------------------------------------
.... | .... | ....
現在,讓我們也說,例如,我有值/字符串表示爲:
時間:十點32分40秒
微秒:421
基本上,我想知道在R中(或在data.table
包中)是否有函數或方法,它允許我使用時間和微秒信息來搜索數據幀,以便它可以找到最接近的「較低」值(或值等於)時間和微秒值。例如,對於我給出的時間:10:32:40和微秒:421信息,數據幀中最接近的較低值將是時間:10:32:40和微秒:420.
另外,I想要在數據幀中找到最接近的'上'值(或值等於),其(對於上面的示例數據幀)將是時間:10:32:40和微秒:422。我想找到最接近的低/高值或(值等於)我擁有的信息。我的意思是「值等於」,如果數據框中有一行與我所擁有的信息完全相同(即:時間:10:32:40和微秒:421),那麼我想用這個而不是使用「最接近的」值 - 直截了當地說,如果數據框中的行信息與我擁有的信息完全相同,那麼與「最接近」值相比,我具有更高的優先級。
我還應該注意,除了「微秒」列之外,我希望能夠找到「時間」列的最接近的值,因爲我可能必須向上/向下舍入「時間」列中的值。
有沒有可以做到這一點的功能或方法?如果我說的不清楚,請讓我知道。
在這裏搜索'data.table'的'滾動連接'或'非等值連接'的Stackoverflow - 我認爲這對你可能是有用的。例如。 - http://stackoverflow.com/questions/32634923/data-table-rolling-join-within-range – thelatemail
謝謝,我現在檢查一下! – ThePlowKing