> #China production function noparametric estimate
> rt<-read.table("china.txt",header=TRUE); rt
year realgdp capital labor
1 1979 4016.290 4493.1 41024
2 1980 4194.429 5152.7 42361
3 1981 4460.196 5835.5 43725
4 1982 4882.096 6700.4 45295
5 1983 5322.089 7794.1 46436
6 1984 6135.583 9123.9 48197
7 1985 6923.494 10893.4 49873
8 1986 7522.190 12877.9 51282
9 1987 8195.861 14889.5 52783
10 1988 8645.281 16957.5 54334
11 1989 8247.404 18431.3 55329
12 1990 8940.758 19783.6 56740
13 1991 10088.204 21428.6 58360
14 1992 11577.152 23813.8 59432
15 1993 13525.485 27064.5 60220
16 1994 14813.392 30770.9 61470
17 1995 15927.664 34712.5 67947
18 1996 17251.361 38966.8 68850
19 1997 18478.955 43547.6 69600
20 1998 19738.047 48916.7 69957
21 1999 21046.761 54518.2 71394
22 2000 22753.226 60400.8 72085
23 2001 24936.476 67044.9 73025
24 2002 27762.468 74964.9 73740
25 2003 31091.589 84902.1 74432
26 2004 35164.634 95584.3 75200
27 2005 40237.263 108940.2 75825
> y=log((rt$realgdp/rt$labor)*10000)
> x=log((rt$capital/rt$labor)*10000)
>
>
> #package np, nonparametric and semiparametric kernel methods
> library(np)
> h1=npregbw(formula=y~x); h1
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 /
Multistart 1 of 1 |
Multistart 1 of 1 |
Regression Data (27 observations, 1 variable(s)):
x
Bandwidth(s): 0.06893708
Regression Type: Local-Constant
Bandwidth Selection Method: Least Squares Cross-Validation
Formula: y ~ x
Bandwidth Type: Fixed
Objective Function Value: 0.001361645 (achieved on multistart 1)
Continuous Kernel Type: Second-Order Gaussian
No. Continuous Explanatory Vars.: 1
> fit1<-npreg(bws=h1,txdat=x,tydat=y)
> npplot(x,y)
错误于UseMethod("npplot", bws) :
"npplot"没有适用于"c('double', 'numeric')"目标对象的方法
> points(x,y)
错误于plot.xy(xy.coords(x, y), type = type, ...) : 还没有调用plot.new
>
> #package KernSmooth, local linear regression
> library(KernSmooth)
> h2=dpill(x,y); h2
[1] 0.8108148
> fit2<-locpoly(x,y,bandwidth=h2)
> plot(x,y)
> lines(fit2)
> #first order derivatives
> order1<-locpoly(x,y,bandwidth=h2,drv=1)
> plot(order1$x,order1$y,type='l')
>
>
> #semiparametric regression, package np
> y1=log(rt$realgdp*100000000)
> x1=log(rt$labor*10000)
> x2=log(rt$capital*100000000)
>
> h3<-npplregbw(y1~x1|x2); h3
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 /
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 |
Multistart 1 of 1 /
Multistart 1 of 1 |
Multistart 1 of 1 |
Partially Linear Model
Regression data (27 observations,
1 linear parametric variable(s) 1 nonparametric variable(s):
y(z)
Bandwidth(s): 0.0753333
x(z)
Bandwidth(s): 0.08117952
Regression Type: Local-Constant
Bandwidth Selection Method: Least Squares Cross-Validation
Formula: y1 ~ x1 | x2
Bandwidth Type: Fixed
Continuous Kernel Type: Second-Order Gaussian
No. Continuous Explanatory Vars.: 1
> #h3<-npplregbw(xdat=x1,ydat=y1,zdat=x2); h3
> fit3<-npplreg(bws=h3)
> summary(fit3)
Partially Linear Model
Regression data: 27 training points, in 2 variable(s)
With 1 linear parametric regressor(s), 1 nonparametric regressor(s)
y(z)
Bandwidth(s): 0.0753333
x(z)
Bandwidth(s): 0.08117952
x1
Coefficient(s): 0.5709484
Kernel Regression Estimator: Local-Constant
Bandwidth Type: Fixed
Residual standard error: 0.0001465206
R-squared: 0.999693
Continuous Kernel Type: Second-Order Gaussian
No. Continuous Explanatory Vars.: 1
> coef(fit3)
x1
0.5709484
> npplot(bws=h3)
>