R的stepfun函數的用法


關於stepfun, 首先說它的必要參數. 再說它的兩個重要參數.
這個函數, 最好的說明方式就是畫圖. 圖在后面.

它的必要參數是兩個向量, x,y. 意義是橫坐標和縱坐標. 其中x必須是一個升序的向量, 經常是sort(x)的寫法. y的長度比x大1. 對應關系是怎樣的呢?
x[1]對應y[2], 一直到x[n]對應y[n+1]. 而>x[n], 仍然為y[n+1]. 小於x[1]時為y[1], 這就是為什么y的長度比x大1.

然后說它的2個參數. f和right.

f是在控制啥呢, 在x那幾個點, y是確定的, f控制的是它們之間的. 具體來說, x的相鄰兩點之間, 是f右邊的點對應的y+(1-f)左邊的點對應的y.
比如這段代碼(example給出的代碼)

y0 <- c(1., 2., 4., 3.)
sfun0 <- stepfun(1:3, y0, f = 0)
sfun.2 <- stepfun(1:3, y0, f = 0.2)
sfun1 <- stepfun(1:3, y0, f = 1)
sfun1c <- stepfun(1:3, y0, right = TRUE) # hence f=1


可以看到, f=0時, 兩個點之間和左邊的一樣(右連續), f=1, 和右邊一樣(左連續).

而f在0到1之間呢, 看下面這個圖, 1和2之間, 是0.82+0.24=2.4

再說right參數是干啥的. 之前我們說了對應關系. 如果right=F(默認), 那么

也就是說, 之前y的第一個是留給<x[1]的, 而x[n](假設n是x的長度), 會被迫與x[n-1]的一樣. 現在<x[1]的與x[1]一樣, y多出來的一個, 在這時也就是最后一個, 對應的是x>x[n]的.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM