suppressMessages({
library(hdm)
library(AER)
data("EminentDomain")
})
names(EminentDomain$logNM)
## [1] "x" "y" "d" "z"
?EminentDomain
x=EminentDomain$logNM$x
y=EminentDomain$logNM$y
z=EminentDomain$logNM$z
d=EminentDomain$logNM$d

Many IVs:

dim(z)
## [1] 1920  145
dim(x)
## [1] 1920   65
TSLS<-ivreg(y~d+x | z+x)
coeftest(TSLS,vcov. = vcovHC(TSLS,type="HC0"))[1:2,]
##               Estimate Std. Error  t value     Pr(>|t|)
## (Intercept) 5.34608768 1.09963529 4.861692 1.261979e-06
## d           0.01227235 0.00681147 1.801718 7.175221e-02

With selection of IVs:

model.NM<-rlassoIV(
        y=y,
        d=d,
        x=x,
        z=z,
         select.Z = TRUE,
         select.X = FALSE)
summary(model.NM)
## [1] "Estimates and significance testing of the effect of target variables in the IV regression model"
##       coeff.       se. t-value p-value  
## d1 -0.023148  0.009656  -2.397  0.0165 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Confidence interval:

confint(model.NM)
##          2.5 %       97.5 %
## d1 -0.04207202 -0.004223106
model.NM$selected
##         d1
## z1   FALSE
## z2    TRUE
## z3   FALSE
## z4    TRUE
## z5    TRUE
## z6   FALSE
## z7   FALSE
## z8   FALSE
## z9   FALSE
## z10  FALSE
## z11   TRUE
## z12   TRUE
## z13  FALSE
## z14  FALSE
## z15   TRUE
## z16  FALSE
## z17  FALSE
## z18  FALSE
## z19   TRUE
## z20  FALSE
## z21  FALSE
## z22  FALSE
## z23  FALSE
## z24  FALSE
## z25  FALSE
## z26  FALSE
## z27  FALSE
## z28  FALSE
## z29  FALSE
## z30  FALSE
## z31  FALSE
## z32  FALSE
## z33  FALSE
## z34  FALSE
## z35  FALSE
## z36  FALSE
## z37  FALSE
## z38  FALSE
## z39  FALSE
## z40  FALSE
## z41  FALSE
## z42  FALSE
## z43  FALSE
## z44  FALSE
## z45  FALSE
## z46  FALSE
## z47   TRUE
## z48  FALSE
## z49  FALSE
## z50  FALSE
## z51  FALSE
## z52  FALSE
## z53  FALSE
## z54  FALSE
## z55  FALSE
## z56  FALSE
## z57  FALSE
## z58  FALSE
## z59  FALSE
## z60  FALSE
## z61  FALSE
## z62   TRUE
## z63  FALSE
## z64  FALSE
## z65  FALSE
## z66  FALSE
## z67  FALSE
## z68  FALSE
## z69  FALSE
## z70  FALSE
## z71  FALSE
## z72  FALSE
## z73  FALSE
## z74  FALSE
## z75  FALSE
## z76  FALSE
## z77  FALSE
## z78  FALSE
## z79  FALSE
## z80  FALSE
## z81  FALSE
## z82  FALSE
## z83  FALSE
## z84  FALSE
## z85  FALSE
## z86  FALSE
## z87   TRUE
## z88  FALSE
## z89  FALSE
## z90  FALSE
## z91  FALSE
## z92  FALSE
## z93   TRUE
## z94  FALSE
## z95  FALSE
## z96  FALSE
## z97  FALSE
## z98  FALSE
## z99  FALSE
## z100 FALSE
## z101  TRUE
## z102 FALSE
## z103  TRUE
## z104  TRUE
## z105 FALSE
## z106 FALSE
## z107 FALSE
## z108 FALSE
## z109 FALSE
## z110 FALSE
## z111 FALSE
## z112 FALSE
## z113 FALSE
## z114 FALSE
## z115 FALSE
## z116 FALSE
## z117 FALSE
## z118 FALSE
## z119 FALSE
## z120 FALSE
## z121 FALSE
## z122 FALSE
## z123 FALSE
## z124 FALSE
## z125  TRUE
## z126 FALSE
## z127 FALSE
## z128  TRUE
## z129 FALSE
## z130 FALSE
## z131 FALSE
## z132 FALSE
## z133 FALSE
## z134 FALSE
## z135 FALSE
## z136 FALSE
## z137 FALSE
## z138 FALSE
## z139 FALSE
## z140 FALSE
## z141 FALSE
## z142 FALSE
## z143 FALSE
## z144  TRUE
## z145 FALSE
## x1    TRUE
## x2   FALSE
## x3    TRUE
## x4   FALSE
## x5    TRUE
## x6   FALSE
## x7   FALSE
## x8   FALSE
## x9   FALSE
## x10  FALSE
## x11   TRUE
## x12  FALSE
## x13  FALSE
## x14  FALSE
## x15   TRUE
## x16  FALSE
## x17  FALSE
## x18   TRUE
## x19  FALSE
## x20   TRUE
## x21   TRUE
## x22  FALSE
## x23   TRUE
## x24  FALSE
## x25  FALSE
## x26  FALSE
## x27  FALSE
## x28  FALSE
## x29  FALSE
## x30  FALSE
## x31  FALSE
## x32  FALSE
## x33  FALSE
## x34  FALSE
## x35   TRUE
## x36  FALSE
## x37  FALSE
## x38  FALSE
## x39  FALSE
## x40  FALSE
## x41  FALSE
## x42  FALSE
## x43  FALSE
## x44  FALSE
## x45  FALSE
## x46  FALSE
## x47  FALSE
## x48  FALSE
## x49  FALSE
## x50  FALSE
## x51  FALSE
## x52  FALSE
## x53  FALSE
## x54  FALSE
## x55  FALSE
## x56  FALSE
## x57  FALSE
## x58  FALSE
## x59  FALSE
## x60  FALSE
## x61  FALSE
## x62   TRUE
## x63  FALSE
## x64  FALSE
## x65  FALSE