Last data update: 2014.03.03
R: Economics Journal Subscription Data
Economics Journal Subscription Data
Description
Subscriptions to economics journals at US libraries, for the year 2000.
Usage
data("Journals")
Format
A data frame containing 180 observations on 10 variables.
title Journal title.
publisher factor with publisher name.
society factor. Is the journal published by a scholarly society?
price Library subscription price.
pages Number of pages.
charpp Characters per page.
citations Total number of citations.
foundingyear Year journal was founded.
subs Number of library subscriptions.
field factor with field description.
Details
Data on 180 economic journals, collected in particular for analyzing journal
pricing. See also http://www.econ.ucsb.edu/~tedb/Journals/jpricing.html
for general information on this topic as well as a more up-to-date version of
the data set. This version is taken from Stock and Watson (2007).
The data as obtained from http://wps.aw.com/aw_stock_ie_2
contained two journals with title “World Development”. One of these (observation 80)
seemed to be an error and was changed to “The World Economy”.
Source
Online complements to Stock and Watson (2007).
http://wps.aw.com/aw_stock_ie_2/0,12040,3332253-,00.html
References
Bergstrom, T. (2001). Free Labor for Costly Journals? Journal of Economic Perspectives , 15, 183–198.
Stock, J.H. and Watson, M.W. (2007). Introduction to Econometrics , 2nd ed. Boston: Addison Wesley.
See Also
StockWatson2007
Examples
## data and transformed variables
data("Journals")
journals <- Journals[, c("subs", "price")]
journals$citeprice <- Journals$price/Journals$citations
journals$age <- 2000 - Journals$foundingyear
journals$chars <- Journals$charpp*Journals$pages/10^6
## Stock and Watson (2007)
## Figure 8.9 (a) and (b)
plot(subs ~ citeprice, data = journals, pch = 19)
plot(log(subs) ~ log(citeprice), data = journals, pch = 19)
fm1 <- lm(log(subs) ~ log(citeprice), data = journals)
abline(fm1)
## Table 8.2, use HC1 for comparability with Stata
fm2 <- lm(subs ~ citeprice + age + chars, data = log(journals))
fm3 <- lm(subs ~ citeprice + I(citeprice^2) + I(citeprice^3) +
age + I(age * citeprice) + chars, data = log(journals))
fm4 <- lm(subs ~ citeprice + age + I(age * citeprice) + chars, data = log(journals))
coeftest(fm1, vcov = vcovHC(fm1, type = "HC1"))
coeftest(fm2, vcov = vcovHC(fm2, type = "HC1"))
coeftest(fm3, vcov = vcovHC(fm3, type = "HC1"))
coeftest(fm4, vcov = vcovHC(fm4, type = "HC1"))
waldtest(fm3, fm4, vcov = vcovHC(fm3, type = "HC1"))
## changes with respect to age
library("strucchange")
## Nyblom-Hansen test
scus <- gefp(subs ~ citeprice, data = log(journals), fit = lm, order.by = ~ age)
plot(scus, functional = meanL2BB)
## estimate breakpoint(s)
journals <- journals[order(journals$age),]
bp <- breakpoints(subs ~ citeprice, data = log(journals), h = 20)
plot(bp)
bp.age <- journals$age[bp$breakpoints]
## visualization
plot(subs ~ citeprice, data = log(journals), pch = 19, col = (age > log(bp.age)) + 1)
abline(coef(bp)[1,], col = 1)
abline(coef(bp)[2,], col = 2)
legend("bottomleft", legend = c("age > 18", "age < 18"), lty = 1, col = 2:1, bty = "n")
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(AER)
Loading required package: car
Loading required package: lmtest
Loading required package: zoo
Attaching package: 'zoo'
The following objects are masked from 'package:base':
as.Date, as.Date.numeric
Loading required package: sandwich
Loading required package: survival
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/AER/Journals.Rd_%03d_medium.png", width=480, height=480)
> ### Name: Journals
> ### Title: Economics Journal Subscription Data
> ### Aliases: Journals
> ### Keywords: datasets
>
> ### ** Examples
>
> ## data and transformed variables
> data("Journals")
> journals <- Journals[, c("subs", "price")]
> journals$citeprice <- Journals$price/Journals$citations
> journals$age <- 2000 - Journals$foundingyear
> journals$chars <- Journals$charpp*Journals$pages/10^6
>
> ## Stock and Watson (2007)
> ## Figure 8.9 (a) and (b)
> plot(subs ~ citeprice, data = journals, pch = 19)
> plot(log(subs) ~ log(citeprice), data = journals, pch = 19)
> fm1 <- lm(log(subs) ~ log(citeprice), data = journals)
> abline(fm1)
>
> ## Table 8.2, use HC1 for comparability with Stata
> fm2 <- lm(subs ~ citeprice + age + chars, data = log(journals))
> fm3 <- lm(subs ~ citeprice + I(citeprice^2) + I(citeprice^3) +
+ age + I(age * citeprice) + chars, data = log(journals))
> fm4 <- lm(subs ~ citeprice + age + I(age * citeprice) + chars, data = log(journals))
> coeftest(fm1, vcov = vcovHC(fm1, type = "HC1"))
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.766212 0.055258 86.253 < 2.2e-16 ***
log(citeprice) -0.533053 0.033959 -15.697 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
> coeftest(fm2, vcov = vcovHC(fm2, type = "HC1"))
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.206648 0.379725 8.4447 1.102e-14 ***
citeprice -0.407718 0.043717 -9.3262 < 2.2e-16 ***
age 0.423649 0.119064 3.5581 0.0004801 ***
chars 0.205614 0.097751 2.1035 0.0368474 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
> coeftest(fm3, vcov = vcovHC(fm3, type = "HC1"))
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.4075956 0.3735992 9.1210 < 2.2e-16 ***
citeprice -0.9609365 0.1601349 -6.0008 1.121e-08 ***
I(citeprice^2) 0.0165099 0.0254886 0.6477 0.518015
I(citeprice^3) 0.0036666 0.0055147 0.6649 0.507008
age 0.3730539 0.1176966 3.1696 0.001805 **
I(age * citeprice) 0.1557773 0.0518947 3.0018 0.003081 **
chars 0.2346178 0.0977318 2.4006 0.017428 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
> coeftest(fm4, vcov = vcovHC(fm4, type = "HC1"))
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.433521 0.367471 9.3436 < 2.2e-16 ***
citeprice -0.898910 0.144648 -6.2144 3.656e-09 ***
age 0.373515 0.117527 3.1781 0.0017529 **
I(age * citeprice) 0.140959 0.040199 3.5065 0.0005769 ***
chars 0.229466 0.096493 2.3781 0.0184822 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
> waldtest(fm3, fm4, vcov = vcovHC(fm3, type = "HC1"))
Wald test
Model 1: subs ~ citeprice + I(citeprice^2) + I(citeprice^3) + age + I(age *
citeprice) + chars
Model 2: subs ~ citeprice + age + I(age * citeprice) + chars
Res.Df Df F Pr(>F)
1 173
2 175 -2 0.249 0.7799
>
> ## changes with respect to age
> library("strucchange")
> ## Nyblom-Hansen test
> scus <- gefp(subs ~ citeprice, data = log(journals), fit = lm, order.by = ~ age)
> plot(scus, functional = meanL2BB)
> ## estimate breakpoint(s)
> journals <- journals[order(journals$age),]
> bp <- breakpoints(subs ~ citeprice, data = log(journals), h = 20)
> plot(bp)
> bp.age <- journals$age[bp$breakpoints]
> ## visualization
> plot(subs ~ citeprice, data = log(journals), pch = 19, col = (age > log(bp.age)) + 1)
> abline(coef(bp)[1,], col = 1)
> abline(coef(bp)[2,], col = 2)
> legend("bottomleft", legend = c("age > 18", "age < 18"), lty = 1, col = 2:1, bty = "n")
>
>
>
>
>
> dev.off()
null device
1
>