inst/doc/micEconAids_vignette.R

### R code from vignette source 'micEconAids_vignette.Rnw'

###################################################
### code chunk number 1: micEconAids_vignette.Rnw:366-367 (eval = FALSE)
###################################################
## aidsEst( priceNames, shareNames, totExpName, data )


###################################################
### code chunk number 2: micEconAids_vignette.Rnw:394-396
###################################################
library(micEconAids)
data( "Blanciforti86" )


###################################################
### code chunk number 3: micEconAids_vignette.Rnw:415-416
###################################################
Blanciforti86 <- Blanciforti86[ 1:32, ]


###################################################
### code chunk number 4: micEconAids_vignette.Rnw:421-423
###################################################
priceNames <- c( "pFood1", "pFood2", "pFood3", "pFood4" )
shareNames <- c( "wFood1", "wFood2", "wFood3", "wFood4" )


###################################################
### code chunk number 5: micEconAids_vignette.Rnw:430-433
###################################################
laaidsResult <- aidsEst( priceNames, shareNames, "xFood", data = Blanciforti86,
   priceIndex = "S"  )
print( laaidsResult )


###################################################
### code chunk number 6: micEconAids_vignette.Rnw:441-442
###################################################
summary( laaidsResult )


###################################################
### code chunk number 7: micEconAids_vignette.Rnw:464-465
###################################################
options( digits = 3)


###################################################
### code chunk number 8: micEconAids_vignette.Rnw:486-488
###################################################
laaidsResultSL <- aidsEst( priceNames, shareNames, "xFood", data = Blanciforti86,
   priceIndex = "SL" )


###################################################
### code chunk number 9: micEconAids_vignette.Rnw:505-514
###################################################
instNames <- c( paste( "l", priceNames, sep = "" ), "lxFood" )
for( i in 1:4 ){
   Blanciforti86[[ instNames[ i ] ]] <-
      log( Blanciforti86[[ priceNames[ i ] ]] )
}
Blanciforti86[[ "lxFood" ]] <- log( Blanciforti86[[ "xFood" ]] )

laaidsResultIV <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "S", instNames = instNames )


###################################################
### code chunk number 10: micEconAids_vignette.Rnw:547-555
###################################################
laaidsResultP <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "P" )

laaidsResultL <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "L" )

laaidsResultT <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "T" )


###################################################
### code chunk number 11: micEconAids_vignette.Rnw:572-574
###################################################
laaidsResultLs <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86 )


###################################################
### code chunk number 12: micEconAids_vignette.Rnw:582-586
###################################################
all.equal( coef( laaidsResultL )$alpha, coef( laaidsResultLs )$alpha )
all.equal( coef( laaidsResultL )$beta, coef( laaidsResultLs )$beta )
all.equal( coef( laaidsResultL )$gamma, coef( laaidsResultLs )$gamma )
all.equal( laaidsResultL$r2, laaidsResultLs$r2 )


###################################################
### code chunk number 13: micEconAids_vignette.Rnw:698-700
###################################################
aidsResult <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, method = "IL" )


###################################################
### code chunk number 14: micEconAids_vignette.Rnw:710-711
###################################################
options( digits = 7 )


###################################################
### code chunk number 15: micEconAids_vignette.Rnw:736-740
###################################################
all.equal( sum( coef( aidsResult )$alpha ), 1 )
all.equal( sum( coef( aidsResult )$beta ), 0 )
all.equal( colSums( coef( aidsResult )$gamma ), rep( 0, 4 ),
   check.attributes = FALSE )


###################################################
### code chunk number 16: micEconAids_vignette.Rnw:748-751
###################################################
all.equal( rowSums( coef( aidsResult )$gamma ), rep( 0, 4 ),
   check.attributes = FALSE )
isSymmetric( coef( aidsResult )$gamma, tol = 1e-10, check.attributes = FALSE )


###################################################
### code chunk number 17: micEconAids_vignette.Rnw:764-767
###################################################
aidsResultHom <- aidsEst( priceNames, shareNames, "xFood", data = Blanciforti86,
   method = "IL", sym = FALSE )
isSymmetric( coef( aidsResultHom )$gamma, tol = 1e-10, check.attributes = FALSE )


###################################################
### code chunk number 18: micEconAids_vignette.Rnw:775-776
###################################################
lrtest( aidsResult, aidsResultHom )


###################################################
### code chunk number 19: micEconAids_vignette.Rnw:783-787
###################################################
aidsResultUnr <- aidsEst( priceNames, shareNames, "xFood", data = Blanciforti86,
   method = "IL", hom = FALSE, sym = FALSE )
all.equal( rowSums( coef( aidsResultUnr )$gamma ), rep( 0, 4 ),
   check.attributes = FALSE )


###################################################
### code chunk number 20: micEconAids_vignette.Rnw:793-794
###################################################
lrtest( aidsResultHom, aidsResultUnr )


###################################################
### code chunk number 21: micEconAids_vignette.Rnw:802-803
###################################################
lrtest( aidsResult, aidsResultUnr )


###################################################
### code chunk number 22: micEconAids_vignette.Rnw:823-824 (eval = FALSE)
###################################################
## aidsMono( priceNames, totExpName, coef, data )


###################################################
### code chunk number 23: micEconAids_vignette.Rnw:841-843
###################################################
aidsMono( priceNames, "xFood", coef = coef( aidsResult ),
   data = Blanciforti86 )


###################################################
### code chunk number 24: micEconAids_vignette.Rnw:859-865
###################################################
aidsMono( priceNames, "xFood", coef = coef( laaidsResult ),
   data = Blanciforti86, priceIndex = "S" )
aidsMono( priceNames, "xFood", coef = coef( laaidsResultT ),
   data = Blanciforti86, priceIndex = "T",
   basePrices = laaidsResultT$basePrices,
   baseShares = laaidsResultT$baseShares )


###################################################
### code chunk number 25: micEconAids_vignette.Rnw:876-880
###################################################
aidsMono( priceNames, "xFood", coef = coef( laaidsResult ),
   data = Blanciforti86, priceIndex = laaidsResult$lnp )
aidsMono( priceNames, "xFood", coef = coef( laaidsResultT ),
   data = Blanciforti86, priceIndex = laaidsResultT$lnp )


###################################################
### code chunk number 26: micEconAids_vignette.Rnw:917-918 (eval = FALSE)
###################################################
## aidsConcav( priceNames, totExpName, coef, data )


###################################################
### code chunk number 27: micEconAids_vignette.Rnw:926-928
###################################################
aidsConcav( priceNames, "xFood", coef = coef( aidsResult ),
   data = Blanciforti86 )


###################################################
### code chunk number 28: micEconAids_vignette.Rnw:937-939
###################################################
aidsConcav( priceNames, "xFood", coef = coef( aidsResult ),
   data = Blanciforti86, shareNames = shareNames )


###################################################
### code chunk number 29: micEconAids_vignette.Rnw:955-959
###################################################
laaidsCoef <- coef( laaidsResult )
laaidsCoef$alpha0 <- 1
aidsConcav( priceNames, "xFood", coef = laaidsCoef,
   data = Blanciforti86 )


###################################################
### code chunk number 30: micEconAids_vignette.Rnw:971-972 (eval = FALSE)
###################################################
## aidsConsist( priceNames, totExpName, coef, data )


###################################################
### code chunk number 31: micEconAids_vignette.Rnw:983-985
###################################################
aidsConsist( priceNames, "xFood", coef = coef( aidsResult ),
   data = Blanciforti86 )


###################################################
### code chunk number 32: micEconAids_vignette.Rnw:1006-1007
###################################################
aidsResultConsist <- checkConsist( aidsResult )


###################################################
### code chunk number 33: micEconAids_vignette.Rnw:1019-1020
###################################################
aidsResultConsistObs <- checkConsist( aidsResult, observedShares = TRUE )


###################################################
### code chunk number 34: micEconAids_vignette.Rnw:1064-1065
###################################################
options( digits = 3)


###################################################
### code chunk number 35: micEconAids_vignette.Rnw:1074-1075 (eval = FALSE)
###################################################
## aidsElas( coef, prices = NULL, shares = NULL, totExp = NULL )


###################################################
### code chunk number 36: micEconAids_vignette.Rnw:1094-1099
###################################################
pMeans <- colMeans( Blanciforti86[ , priceNames ] )
wMeans <- colMeans( Blanciforti86[ , shareNames ] )
aidsResultElas <- aidsElas( coef( aidsResult ), prices = pMeans,
   shares = wMeans )
print( aidsResultElas )


###################################################
### code chunk number 37: micEconAids_vignette.Rnw:1109-1113
###################################################
xtMean <- mean( Blanciforti86[ , "xFood" ] )
aidsResultElas2 <- aidsElas( coef( aidsResult ), prices = pMeans,
   totExp = xtMean )
all.equal( aidsResultElas, aidsResultElas2 )


###################################################
### code chunk number 38: micEconAids_vignette.Rnw:1144-1148
###################################################
aidsResultElasCov <- aidsElas( coef( aidsResult ), prices = pMeans,
   totExp = xtMean, coefCov = vcov( aidsResult ),
   df = df.residual( aidsResult ) )
summary( aidsResultElasCov )


###################################################
### code chunk number 39: micEconAids_vignette.Rnw:1161-1163
###################################################
aidsResultElasCov2 <- elas( aidsResult )
all.equal( aidsResultElasCov, aidsResultElasCov2 )


###################################################
### code chunk number 40: micEconAids_vignette.Rnw:1174-1175
###################################################
aidsResultElasCovObs <- elas( aidsResult, observedShares = TRUE )


###################################################
### code chunk number 41: micEconAids_vignette.Rnw:1267-1270
###################################################
laaidsResultElasB1 <- aidsElas( coef( laaidsResult ),
   prices = pMeans, totExp = xtMean, method = "B1",
   priceIndex = "S" )


###################################################
### code chunk number 42: micEconAids_vignette.Rnw:1274-1276
###################################################
laaidsResultElasB1a <- elas( laaidsResult, method = "B1" )
all.equal( laaidsResultElasB1, laaidsResultElasB1a )


###################################################
### code chunk number 43: micEconAids_vignette.Rnw:1301-1302
###################################################
laaidsResultElasB2 <- elas( laaidsResult, method = "B2" )


###################################################
### code chunk number 44: micEconAids_vignette.Rnw:1329-1330
###################################################
laaidsResultElasGo <- elas( laaidsResult, method = "Go" )


###################################################
### code chunk number 45: micEconAids_vignette.Rnw:1348-1349
###################################################
laaidsResultElasEU <- elas( laaidsResult, method = "EU" )


###################################################
### code chunk number 46: micEconAids_vignette.Rnw:1558-1559 (eval = FALSE)
###################################################
## aidsCalc( priceNames, totExpName, coef, data )


###################################################
### code chunk number 47: micEconAids_vignette.Rnw:1577-1579
###################################################
B86new <- Blanciforti86
B86new$pFood1 <- B86new$pFood1 * 1.10


###################################################
### code chunk number 48: micEconAids_vignette.Rnw:1586-1588
###################################################
aidsMeat10 <- aidsCalc( priceNames, "xFood",
   coef( aidsResult ), data = B86new )


###################################################
### code chunk number 49: micEconAids_vignette.Rnw:1596-1597
###################################################
aidsMeat10$quant[ 32, ] / fitted( aidsResult )$quant[ 32, ]


###################################################
### code chunk number 50: micEconAids_vignette.Rnw:1599-1600
###################################################
quantRatio <- aidsMeat10$quant[ 32, ] / fitted( aidsResult )$quant[ 32, ]


###################################################
### code chunk number 51: micEconAids_vignette.Rnw:1636-1638
###################################################
laaidsMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResult ), data = B86new, priceIndex = "S" )


###################################################
### code chunk number 52: micEconAids_vignette.Rnw:1655-1657
###################################################
laaidsSLMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResultSL ), data = B86new, priceIndex = "SL" )


###################################################
### code chunk number 53: micEconAids_vignette.Rnw:1675-1685
###################################################
laaidsLMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResultL ), data = B86new, priceIndex = "L",
   basePrices = laaidsResultL$basePrices,
   baseShares = laaidsResultL$baseShares )

laaidsLsMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResultLs ), data = B86new, priceIndex = "Ls",
   baseShares = laaidsResultLs$baseShares )

all.equal( laaidsLMeat10$quant, laaidsLsMeat10$quant, check.attributes = FALSE )


###################################################
### code chunk number 54: micEconAids_vignette.Rnw:1711-1719
###################################################
laaidsPMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResultP ), data = B86new, priceIndex = "P",
   basePrices = laaidsResultP$basePrices )

laaidsTMeat10 <- aidsCalc( priceNames, "xFood",
   coef( laaidsResultT ), data = B86new, priceIndex = "T",
   basePrices = laaidsResultT$basePrices,
   baseShares = laaidsResultT$baseShares )


###################################################
### code chunk number 55: micEconAids_vignette.Rnw:1729-1730 (eval = FALSE)
###################################################
## predict( object, newdata = NULL, observedShares = FALSE )


###################################################
### code chunk number 56: micEconAids_vignette.Rnw:1750-1755
###################################################
aidsMeat10a <- predict( aidsResult, newdata = B86new )
all.equal( aidsMeat10, aidsMeat10a )

laaidsMeat10a <- predict( laaidsResult, newdata = B86new )
all.equal( laaidsMeat10, laaidsMeat10a )


###################################################
### code chunk number 57: micEconAids_vignette.Rnw:1797-1805
###################################################
priceNamesScaled <- paste( priceNames, "Scaled", sep = "" )
for( i in 1:4 ){
   Blanciforti86[[ priceNamesScaled[ i ] ]] <-
      Blanciforti86[[ priceNames[i] ]] /
      Blanciforti86[ "1972", priceNames[ i ] ]
}
Blanciforti86$xFoodScaled <- Blanciforti86$xFood /
   Blanciforti86[ "1972", "xFood" ]


###################################################
### code chunk number 58: micEconAids_vignette.Rnw:1825-1830
###################################################
estResultLA <- aidsEst( priceNamesScaled, shareNames, "xFoodScaled",
   data = Blanciforti86, priceIndex = "SL", maxiter = 100 )
estResultLA
elas( estResultLA )$exp
elas( estResultLA )$marshall


###################################################
### code chunk number 59: micEconAids_vignette.Rnw:1850-1857
###################################################
estResultLAnh <- aidsEst( priceNamesScaled, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "SL", hom = FALSE, sym = FALSE,
   maxiter = 100 )
estResultLAnh
estResultLAnh$r2
elas( estResultLAnh )$exp
elas( estResultLAnh )$marshall


###################################################
### code chunk number 60: micEconAids_vignette.Rnw:1870-1876
###################################################
estResultLAns <- aidsEst( priceNamesScaled, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "SL", sym = FALSE, maxiter = 100 )
estResultLAns
estResultLAns$r2
elas( estResultLAns )$exp
elas( estResultLAns )$marshall


###################################################
### code chunk number 61: micEconAids_vignette.Rnw:1889-1893
###################################################
estResultA <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86[ -1, ], method = "IL", maxiter = 100 )
elas( estResultA )$exp
diag( elas( estResultA )$marshall )


###################################################
### code chunk number 62: micEconAids_vignette.Rnw:1912-1924
###################################################
diag( elas( estResultA, method = "AIDS" )$marshall )

estResultLA <- aidsEst( priceNames, shareNames, "xFood",
   data = Blanciforti86, priceIndex = "S", maxiter = 100 )

diag( elas( estResultLA, method = "AIDS" )$marshall )

diag( elas( estResultLA, method = "EU" )$marshall )

diag( elas( estResultLA, method = "Ch" )$marshall )

diag( elas( estResultLA, method = "GA" )$marshall )

Try the micEconAids package in your browser

Any scripts or data that you put into this service are public.

micEconAids documentation built on May 20, 2022, 5:05 p.m.