R-问题:如何使用 na.approx() 对风向(角度)355 和 5 进行线性插值,使 0 而不是 180

问题描述 投票:0回答:1

我正在尝试使用 na.approx 函数对非常大的数据帧进行线性插值。 除角度数据外,效果非常好,例如风向。如果您进行线性插值,例如350 和 10 你会得到 180 而不是正确的 0(北向) 有谁知道大插值的解决方案

例如:

df <- c(350,NA,10) df <- df %>% na.approx %>% data.frame()

应该是 350 0 10 但结果是 350 180 10

r angle linear-interpolation
1个回答
0
投票

“180”的结果在数学上是正确的。除非你找到或编写一个“知道”你正在破坏极坐标度数的函数,否则你返回“0”的愿望将会失败。

Q&D 修复是这样预处理您的输入数据:

mydata[180 < mydata ] <- 360 - mydata[180 < mydata]
© www.soinside.com 2019 - 2024. All rights reserved.