[英]The curve function in base R
抱歉,這可能很基本,但是我是新手。 我會做很多曲線,所以一些建議對我有用。
我有一個要繪制的函數:
f <- function(x) sum(4*sin(x*seq(1,21,2))/(pi*seq(1,21,2)))
運用
curve(f, -pi, pi, n=100)
不幸的是,這對我不起作用。 請指教。 謝謝
您的功能不是矢量化的。 目前,它僅需要一個標量輸入並輸出一個返回值。 curve
期望它應該能夠輸入要繪制的x值的向量,並且應該接收響應值的向量。 最簡單的解決方案是僅使用Vectorize
將您的函數自動轉換為可以接受向量輸入的函數。
f2 <- Vectorize(f)
curve(f2, -pi, pi, n = 100)
但是,您可能只想直接編寫該函數的矢量化版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.