0
當我嘗試爲元素列表或數據框的一部分運行我的函數時,我收到警告消息和錯誤答案。它完美地運行一個單一的數字。爲用戶定義的函數運行一組元素?
library(bezier)
t <- seq(0, 1, length=100)
p <- matrix(c(0.03,0.03,0, 0.335,0.6,0, 0.667,0.9,0, 1,1,0), nrow=4, ncol=3, byrow=TRUE)
bezier_points <- bezier(t=t, p=p[, 1:2])
getybezier <- function(x, bezpointsdf)
{
ind <- min(which(bezpointsdf[,1] > x))
return(bezier_points[ind,2])
}
getybezier(0.45, bezier_points)
test <- c(0.031, 0.45, 0.65)
getybezier(test, bezier_points)
getybezier(0.45,bezier_points) [1] 0.6358359 測試< - C(0.031,0.45,0.65) getybezier(測試,bezier_points) [1] 0.03205104 警告消息: 在bezpointsdf [1]> X: 較長物體長度不短對象長度
的倍數有沒有一種方法,通過該我可以消除此警告消息?它給了我錯誤的答案。我知道它這樣做的原因。但是,我不知道如何解決這個問題。有人可以幫忙嗎?
非常感謝!完美地工作 –