Bestand:FinancePctOfUSprofits.png

FinancePctOfUSprofits.png(480 × 320 pixels, bestandsgrootte: 3 kB, MIME-type: image/png)



Beschrijving

Beschrijving
English: Ratio of Finance to Domestic Industries in Table 6.16 of the National Income and Product Accounts, US Bureau of Economic Analysis.
Datum
Bron Eigen werk
Auteur DavidMCEddy

How to create this image using R

  • NOTE: Wikimedia formatting conflicts with R script
  • in that the R "#" comment character is ignored in the display
  • USE 'EDIT' to get the R script with comment characters
  1. (not visible in standard display)
      1. Table 6.16 of the National Income and Product Accounts,
      2. US Bureau of Economic Analysis.
      3. How to download the US Bureau of Economic Analysis
      4. Table 6.16 and create a plot of finance industry
      5. profits as a percent of US domestic corporate profits
      6. using R (www.r-project.org)
      7. Procedure tested 2012.01.30
    1. 1. Go to the web interface for the
    2. National Income and Product Accounts (NIPA)
    3. of the US Bureau of Economic Analysis
    4. (http://bea.gov/national/nipaweb).
    5. Select "List of All NIPA tables".
    6. From there, select 6.16A, 6.16B, 6.16C, and 6.16D
    7. in turn. With each one, select "Annual series",
    8. "Get All Years", and Update.
    9. Then at the bottom, click "Download All Years (CSV)".
    10. This should produce local copies of files with names like
    11. "NIPA Table (1).csv", ..., "NIPA Table (4).csv"
    12. NOTE: Check to make sure you get annual data,
    13. because a slight error in following the above process
    14. can produce quarterly numbers.
    15. Move or copy these files into a working directory
    16. for your R session and rename them to the following:

(table6.16.csv <- paste('NIPA6.16', LETTERS[1:4], '.csv', sep=))

    1. 2. Read the contents of the table

table6.16lines <- lapply(table6.16.csv, readLines)

  1. Confirm that the first line gives the table numbers:
  2. 6.16 A, B, C, D

sapply(table6.16lines, '[', 1)

    1. 3. Get years, Domestic Industries, and Financial:
    2. rows 5, 7 and 8 in each table.
  1. Confirm that line 5 starts "Line"

(table6.16data <- lapply(table6.16lines, '[', c(5, 7, 8)))

  1. NOTE: If line 5 does NOT start "Line", you have the wrong table(s).

get6.16data <- function(x){

   x. <- gsub('\"', , x)
   ys <- strsplit(x., split=',')
   Names <- sapply(ys[-1], '[', 2)
   Names[2] <- gsub(' ', , Names[2])
   yrs <- lapply(ys, '[', -(1:2))
   dat <- lapply(yrs, as.numeric)
   X <- do.call(rbind, dat)
   dimnames(X) <- list(c('year', Names), NULL)
   X

}

  1. confirm that it works with the first one

get6.16data(table6.16data1)

  1. Now try all 4

(table6.16Data <- lapply(table6.16data, get6.16data))

    1. 4. Put them together

str(table6.16AB <- do.call(cbind, table6.16Data[1:2]))

  1. Identify duplicate years, keep the last

keepAB <- (table6.16AB[1,]<table6.16Data3[1,1])

str(table6.16ABC <- cbind(table6.16AB[, keepAB], table6.16Data3))

keepABC <- (table6.16ABC[1,]<table6.16Data4[1,1]) str(table6.16ABCD <- cbind(table6.16ABC[, keepABC], table6.16Data4))

    1. 5. transpose, convert to data.frame

str(table6.16 <- as.data.frame(t(table6.16ABCD))) names(table6.16)[2] <- 'DomesticIndustries'

  1. check years increment one at a time

table(diff(table6.16[,1]))

    1. 6. Add percent
  1. table6.16$financePct <- with(table6.16, Financial/DomesticIndustries)

png('finance.png', width=480, height=320, bg="transparent") plot(100*Financial/DomesticIndustries ~ year, table6.16, type='l',

    ylim=c(0, 40), xlab=, ylab=,
    frame.plot=FALSE, col='blue', lwd=3, axes=FALSE)

axis(1, seq(1930, 2010, 20), c(1930, NA, 1970, NA, 2010), cex.axis=1.5) axis(2, seq(0, 40, 10), c(0, NA, 20, NA, 40), las=1, cex.axis=1.5)

  1. title('Finance as a percent of US Domestic Corporate Profits')

dev.off()


svg('finance.svg', width=4, height=8/3, bg="transparent") plot(100*Financial/DomesticIndustries ~ year, table6.16, type='l',

    ylim=c(0, 40), xlab=, ylab=,
    frame.plot=FALSE, col='blue', lwd=3, axes=FALSE)

axis(1, seq(1930, 2010, 20), c(1930, NA, 1970, NA, 2010), cex.axis=2) axis(2, seq(0, 40, 10), c(0, NA, 20, NA, 40), las=1, cex.axis=2)

  1. title('Finance as a percent of US Domestic Corporate Profits')

dev.off()

Licentie

Ik, de auteursrechthebbende van dit werk, maak het hierbij onder de volgende licentie beschikbaar:
w:nl:Creative Commons
naamsvermelding Gelijk delen
Dit bestand is gelicenseerd onder de Creative Commons-licentie Naamsvermelding-Gelijk delen 3.0 Unported
De gebruiker mag:
  • Delen – het werk kopiëren, verspreiden en doorgeven
  • Remixen – afgeleide werken maken
Onder de volgende voorwaarden:
  • naamsvermelding – U moet op een gepaste manier aan naamsvermelding doen, een link naar de licentie geven, en aangeven of er wijzigingen in het werk zijn aangebracht. U mag dit op elke redelijke manier doen, maar niet zodanig dat de indruk wordt gewekt dat de licentiegever instemt met uw werk of uw gebruik van zijn werk.
  • Gelijk delen – Als u het werk heeft geremixt, veranderd, of erop heeft voortgebouwd, moet u het gewijzigde materiaal verspreiden onder dezelfde licentie als het oorspronkelijke werk, of een daarmee compatibele licentie.

Bijschriften

Beschrijf in één regel wat dit bestand voorstelt

Items getoond in dit bestand

beeldt af

Bestandsgeschiedenis

Klik op een datum/tijd om het bestand te zien zoals het destijds was.

Datum/tijdMiniatuurAfmetingenGebruikerOpmerking
huidige versie2 feb 2012 04:46Miniatuurafbeelding voor de versie van 2 feb 2012 04:46480 × 320 (3 kB)DavidMCEddy

Dit bestand wordt op de volgende pagina gebruikt: