spline

    0熱度

    1回答

    我試圖在R中使用the spline2 package來構建單調樣條。 我在評估自變量新值的模型時遇到了麻煩。一般來說,我很難掌握R預測的「預測」處理及其與spline2的關係,以及如何使用生成的bs對象。 我試圖關注使用spline1的this example。我的數據是在一個名爲BRIyII數據幀,具有獨立的變量t和相關的變量P這樣: plot(BRIyII$t,BRIyII$P) 產量:

    -2熱度

    1回答

    有沒有什麼辦法使用scipy evllute BSpline/Nurbs在給定的點?我搜索只需要給定點,結矢量和樣條線順序的方法。 我找到了評估樣條函數的方法,但我只想評估給定點的基本元素。那麼有人可能知道在這種情況下使用什麼?它甚至有可能嗎? 另一方面,我已經實現了Cox de Boor算法,但由於他的遞歸定義,評估速度很慢。

    2熱度

    1回答

    我正在做一個smooth.spline()擬合,然後進行適合的預測。我有問題,我的新數據有一些NAs。現在我正在嘗試爲預測也獲得新手。但我沒有得到它的工作。 我已經編寫了一些可重現的代碼來說明我的問題。 我想要我的新數據和我的預測長度相同。例如,當使用predict和loess模型時,我沒有這個問題。如果x爲NA,它會自動將NA置於y。我看到這個問題的其他模型的預測(lm, glm,..但通過設置

    2熱度

    2回答

    set.seed(1); x <- round(rnorm(30), 1); y <- sin(pi * x) + rnorm(30)/10 plot(x, y, main = "spline(x,y) when x has ties") lines(spline(x, y, n = 201), col = 2) 是否有辦法來調整樣條曲線的平滑性?特別是從-0.5開始,有一些可以更平滑的擺

    2熱度

    1回答

    我正在編寫函數,它將使用scipy.interpolate函數計算python中的1d插值。使用文檔幫助我寫了2個不同的函數,用於立方和三次樣條插值 # calculate cubic interpolation def linear_interpolation(x): linear = interpolate.interp1d(support_x, support_y, 'cubic

    1熱度

    2回答

    我有一套我想擬合空間曲線的3d座標(x,y,z)。有沒有人知道Python的現有例程? 根據我發現的(https://docs.scipy.org/doc/scipy/reference/interpolate.html),現有模塊用於將曲線擬合到一組2d座標,以及其他用於將曲面擬合到一組3d座標的模塊。我想要中間路徑 - 將曲線擬合成一組三維座標。 編輯 - 我找到一個明確的答案,這在另一個帖子

    0熱度

    1回答

    我正在嘗試使用廣義相加模型擬合非線性模型。如何確定要使用的樣條線數量。是否有特定的方式來選擇樣條的數量?我已經使用了三階(立方)樣條擬合。以下是代碼。 from pygam import LinearGAM from pygam.utils import generate_X_grid # Curve fitting using GAM model - Penalised spline cu

    1熱度

    2回答

    爲什麼ns(0.8)或ns(c(0.8))返回NA/NaN/Inf in foreign function call (arg 1)? ns(c(0.8, 1.0))工作正常,但我想知道爲什麼只給1個值ns導致NA/NaN/Inf in foreign function call (arg 1)。 例子: > library(splines) > ns(0.8) Error in qr.def

    2熱度

    1回答

    我想用Hermite樣條插值4點之間。不過,我的樣條似乎總是從第二點開始,只插入到第三點。我已經嘗試了幾個不同的計算,並得到相同的結果。 任何人都可以給我這方面的見解嗎?這是我的代碼。 public ControlPoint Get(float t) { //speed multiplyer //t = t * 10; return new ControlPoin

    1熱度

    1回答

    我正在尋找一種方法來插入帶樣條的數據,但強制值和衍生品在端點上。這是我的數據: library(tidyverse) data <- tibble(x = 0:600, y = pnorm((-300:300)/100)+(runif(0:600)-0.5)/20) # add noise data$y[1] <- 0.35 data$y[2] <- 0.25 ggplot(data,