關於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]的.