我在此面前严重亏本,R中的stats过滤器命令如何实现“卷积”方法。我理解过滤器为1时的情况,但对于过滤器的任何其他值,事情会让人感到困惑。从stackoverflow中的另一个问题(simple examples of filter function, recursive option specifically)我理解“卷积”如何适用于filter = 1 例如:
f1<-1,f2<-1,f3<-1
x<-c(1:5)
filter(x,c(f1,f2))
3 5 7 9 NA
#which translates to
x[1]*f1+x[2]*f2
x[2]*f1+x[3]*f2
x[3]*f1+x[4]*f2
x[4]*f1+x[5]*f2
x[5]*f1+x[6]*f2 #x[6] is NA
#filter other than 1
#filter<-c(1,2)
filter(x,c(1,2))
4 7 10 13 NA
#and not the below ones
x[1]*f1+x[2]*f2=5
x[2]*f1+x[3]*f2=8
x[3]*f1+x[4]*f2=11
等等,这到底发生了什么?这可能是微不足道的,因为对卷积方法缺乏了解,但我无法弄清楚
答案 0 :(得分:3)
过滤器以反向时间顺序应用。所以第二个例子的第一个元素是:
x[1]*2 + x[2]*1 = 2 + 2 = 4.
等
卷积的定义包括颠倒其中一个输入的顺序。
答案 1 :(得分:0)
测量蓝牙信标 ping 之间的时间差
使用统计过滤器的示例
其中 AP 是接入点,Location 是测试对象的测量位置
位置 | 日期时间 | 接入点 | MAC | RSSI |
---|---|---|---|---|
实验室@(15m) | 2021-02-25 12:04:34 | “1838Y-1282400000” | "dc:0d:08:00:06:09" | -76 |
实验室@(15m) | 2021-02-25 12:04:34 | “1838Y-1258500000” | "dc:0d:08:00:06:09" | -75 |
.省略了更多行.. | ... | ... | ... | ... |
lab-loadingdock | 2021-02-25 12:29:10 | “1838Y-1282400000” | "dc:0d:08:00:06:09" | -73 |
lab-loadingdock | 2021-02-25 12:29:13 | “1838Y-1283400000” | "dc:0d:08:00:06:09" | -79 |
lab-loadingdock | 2021-02-25 12:29:13 | “1838Y-1258600000” | "dc:0d:08:00:06:09" | -86 |
lab-loadingdock | 2021-02-25 12:29:13 | “1838Y-1282400000” | "dc:0d:08:00:06:09" | -73 |
lab-loadingdock | 2021-02-25 12:29:13 | “1838Y-1258500000” | "dc:0d:08:00:06:09" | -64 |
lab-loadingdock | 2021-02-25 12:29:15 | “1838Y-1282400000” | "dc:0d:08:00:06:09" | -76 |
LabOffice | 2021-02-25 13:07:06 | “1838Y-1258500000” | "dc:0d:08:00:06:09" | -76 |
LabOffice | 2021-02-25 13:07:06 | “1838Y-1282400000” | "dc:0d:08:00:06:09" | -92 |
BLE_Beacon_data %>%
dplyr::filter(AP=="1838Y-1283400000",Location=="lab-loadingdock")%>%
pull(DateTime)%>%
stats::filter(c(1,-1))