Data Preparation

준비한 자료는 E. Saez 교수의 홈페이지에 있는 TabFig2017prel.xlsTax Foundation에서 제공하는 자료를 손봐서 불러들인 것이다.

options(digits = 2)
library(xlsx)
library(knitr)
library(reshape2)
library(magrittr)
load("US_top_income_shares_2017.RData")
# load("US_top_income_shares_vs_tax_rates_2017.rda")
# US_top_income_shares_17 <- read.xlsx("../data/TabFig2017prel.xlsx", sheetIndex = 9, sheetName = "Table A3", startRow = 6, endRow = 108, colIndex = c(1:7, 9:13), header = FALSE)
US_income_averages_17 <- read.xlsx("../data/TabFig2017prel.xlsx", 
                                   sheetIndex = 57, sheetName = "data-FigA1", 
                                   startRow = 4, endRow = 108, 
                                   colIndex = c(1:3, 5:6), header = FALSE)
# v_names <- read.xlsx("./data/TabFig2017prel.xlsx", sheetName = "Table A3", startRow = 4, endRow = 4, colIndex = c(2:7, 9:14), colClasses = character, header = FALSE)
# str(US_top_income_shares_17)
v_names <- c("Year", "Bottom_99", "Top_1", "Bottom_99_K", "Top_1_K")
names(US_income_averages_17) <- v_names
tax_rates <- read.table("../data/federal_income_tax_rates.txt", 
                        skip = 1, header = FALSE)
names(tax_rates) <- c("Year", "Lowest", "Marginal")
top_income_tax <- cbind(US_top_income_shares_17[c("Year", "P99_100")], US_income_averages_17[c("Bottom_99", "Top_1", "Bottom_99_K", "Top_1_K")], tax_rates[2:3])
Rate_99 <- US_income_averages_17[, "Bottom_99"] / US_income_averages_17[, "Bottom_99"][1] * 100
Rate_1 <- US_income_averages_17[, "Top_1"] / US_income_averages_17[, "Top_1"][1] * 100
Rate_99_K <- US_income_averages_17[, "Bottom_99_K"] / US_income_averages_17[, "Bottom_99_K"][1] * 100
Rate_1_K <- US_income_averages_17[, "Top_1_K"] / US_income_averages_17[, "Top_1_K"][1] * 100

선형변환에 사용할 함수 작성 q = x로 하면 변수의 관찰값 전체를 변환. q는 그 중 일부의 변환된 값을 보고자 할 때 입력

z <- function(x, q, a = min(x), b = max(x)) {
  (q - a) / (b - a)
}
#> 0애서 1사이의 범위로 변환
top_income_tax$P99_100_z <- top_income_tax$P99_100 %>%
  z(., .)
top_income_tax$Marginal_z <- top_income_tax$Marginal %>%
  z(., .)
Rate_99_z <- Rate_99 %>%
  z(., ., a = min(c(Rate_99, Rate_1)), b = max(c(Rate_99, Rate_1)))
Rate_1_z <- Rate_1 %>%
  z(., ., a = min(c(Rate_99, Rate_1)), b = max(c(Rate_99, Rate_1)))
Rate_99_K_z <- Rate_99_K %>%
  z(., ., a = min(c(Rate_99_K, Rate_1_K)), b = max(c(Rate_99_K, Rate_1_K)))
Rate_1_K_z <- Rate_1_K %>%
  z(., ., a = min(c(Rate_99_K, Rate_1_K)), b = max(c(Rate_99_K, Rate_1_K)))
kable(cbind(top_income_tax, Rate_99 = Rate_99_z, Rate_1 = Rate_1_z, Rate_99_K = Rate_99_K_z, Rate_1_K = Rate_1_K_z))
Year P99_100 Bottom_99 Top_1 Bottom_99_K Top_1_K Lowest Marginal P99_100_z Marginal_z Rate_99 Rate_1 Rate_99_K Rate_1_K
1913 18.0 13776 298567 13776 298567 1.0 7 0.60 0.00 0.11 0.11 0.07 0.07
1914 18.2 13426 294909 13426 294909 1.0 7 0.62 0.00 0.11 0.11 0.07 0.07
1915 17.6 13652 288244 13652 288244 1.0 7 0.58 0.00 0.11 0.10 0.07 0.07
1916 19.3 14673 331338 14773 350013 2.0 15 0.69 0.09 0.14 0.15 0.09 0.11
1917 17.7 15123 319764 15229 325087 2.0 67 0.59 0.69 0.15 0.14 0.10 0.09
1918 16.0 14611 273130 14705 276502 6.0 77 0.47 0.80 0.13 0.09 0.09 0.06
1919 16.4 14313 267238 14508 281974 4.0 73 0.50 0.76 0.13 0.08 0.08 0.06
1920 14.8 12978 217168 13184 227257 4.0 73 0.40 0.76 0.10 0.03 0.06 0.02
1921 15.6 11314 205033 11405 209301 4.0 73 0.45 0.76 0.06 0.01 0.04 0.01
1922 17.1 12651 243763 12807 260749 4.0 58 0.54 0.59 0.09 0.06 0.06 0.05
1923 15.6 14291 249489 14498 266154 4.0 58 0.45 0.59 0.13 0.06 0.08 0.05
1924 17.4 13899 268283 14126 295058 2.0 46 0.57 0.45 0.12 0.08 0.08 0.07
1925 20.2 13821 292300 14165 355953 1.5 25 0.75 0.21 0.12 0.11 0.08 0.11
1926 19.9 13902 302353 14216 349852 1.5 25 0.73 0.21 0.12 0.12 0.08 0.11
1927 21.0 13890 315864 14252 375638 1.5 25 0.81 0.21 0.12 0.13 0.08 0.13
1928 23.9 14021 338367 14450 450262 1.5 25 1.00 0.21 0.12 0.16 0.08 0.18
1929 22.4 14833 331518 15210 433498 1.5 25 0.89 0.21 0.14 0.15 0.10 0.17
1930 17.2 13773 267926 13997 288326 1.5 25 0.55 0.21 0.11 0.08 0.08 0.07
1931 15.5 12668 226038 12773 231921 1.5 25 0.44 0.21 0.09 0.04 0.06 0.03
1932 15.6 10630 192716 10658 194371 4.0 63 0.44 0.64 0.04 0.00 0.03 0.00
1933 16.5 10320 191306 10409 203032 4.0 63 0.50 0.64 0.03 0.00 0.02 0.01
1934 16.4 11328 211515 11373 220824 4.0 63 0.50 0.64 0.06 0.02 0.04 0.02
1935 16.7 12301 225570 12398 245641 4.0 63 0.52 0.64 0.08 0.04 0.05 0.04
1936 19.3 13183 279477 13391 316822 4.0 79 0.69 0.83 0.10 0.09 0.07 0.09
1937 17.1 14022 273322 14074 288405 4.0 79 0.55 0.83 0.12 0.09 0.08 0.07
1938 15.8 13158 225014 13223 244819 4.0 79 0.46 0.83 0.10 0.04 0.06 0.04
1939 16.2 13913 250599 13978 267033 4.0 79 0.49 0.83 0.12 0.06 0.08 0.05
1940 16.5 14514 268297 14566 284493 4.0 79 0.51 0.83 0.13 0.08 0.09 0.06
1941 15.8 17110 299116 17170 318620 10.0 81 0.46 0.85 0.19 0.12 0.13 0.09
1942 13.4 20378 298940 20409 313408 19.0 88 0.30 0.93 0.27 0.11 0.17 0.08
1943 12.3 23939 307491 24056 334310 19.0 88 0.23 0.93 0.35 0.12 0.23 0.10
1944 11.3 23907 278806 24054 302802 23.0 94 0.16 1.00 0.35 0.09 0.23 0.08
1945 12.5 23261 286694 23664 335157 23.0 94 0.24 1.00 0.33 0.10 0.22 0.10
1946 13.3 23229 306550 23879 361922 20.0 91 0.29 0.97 0.33 0.12 0.23 0.12
1947 12.0 22638 275693 23027 309539 20.0 91 0.21 0.97 0.32 0.09 0.21 0.08
1948 12.2 22962 288725 23304 321851 20.0 91 0.22 0.97 0.33 0.10 0.22 0.09
1949 11.7 22758 276930 22988 302334 20.0 91 0.19 0.97 0.32 0.09 0.21 0.08
1950 12.8 24454 310272 24812 361209 20.0 91 0.26 0.97 0.36 0.13 0.24 0.12
1951 11.8 25434 295983 25793 341205 20.4 91 0.19 0.97 0.38 0.11 0.26 0.10
1952 10.8 26469 283361 26756 320404 22.2 92 0.13 0.98 0.41 0.10 0.27 0.09
1953 9.9 27856 275443 28084 305561 22.2 92 0.07 0.98 0.44 0.09 0.29 0.08
1954 10.8 27424 281371 27774 331996 20.0 91 0.13 0.97 0.43 0.10 0.29 0.10
1955 11.1 29377 293986 29849 367375 20.0 91 0.15 0.97 0.48 0.11 0.32 0.12
1956 10.7 30935 306110 31395 371326 20.0 91 0.12 0.97 0.51 0.12 0.34 0.12
1957 10.2 31112 303952 31456 352220 20.0 91 0.09 0.97 0.52 0.12 0.34 0.11
1958 10.2 30208 289775 30649 344869 20.0 91 0.09 0.97 0.49 0.11 0.33 0.11
1959 10.7 32055 304217 32660 385286 20.0 91 0.12 0.97 0.54 0.12 0.36 0.13
1960 10.0 32556 293896 33017 364581 20.0 91 0.08 0.97 0.55 0.11 0.37 0.12
1961 10.6 32944 296658 33585 395920 20.0 91 0.12 0.97 0.56 0.11 0.38 0.14
1962 9.9 34170 305130 34622 378722 20.0 91 0.07 0.97 0.59 0.12 0.39 0.13
1963 9.9 35069 308637 35584 387792 20.0 91 0.07 0.97 0.61 0.13 0.41 0.14
1964 10.5 36817 317838 37254 431727 16.0 77 0.11 0.80 0.65 0.14 0.43 0.17
1965 10.9 38307 332694 38892 470635 14.0 70 0.13 0.72 0.68 0.15 0.46 0.19
1966 10.2 39871 360476 40754 457045 14.0 70 0.09 0.72 0.72 0.18 0.49 0.19
1967 10.7 40814 371751 41963 499727 14.0 70 0.12 0.72 0.74 0.19 0.50 0.22
1968 11.2 42185 380590 43570 544745 14.0 70 0.16 0.72 0.77 0.20 0.53 0.25
1969 10.3 42958 370686 43950 502405 14.0 70 0.10 0.72 0.79 0.19 0.53 0.22
1970 9.0 43294 362789 43936 431511 14.0 70 0.01 0.72 0.80 0.18 0.53 0.17
1971 9.4 43184 360977 44061 452522 14.0 70 0.04 0.72 0.79 0.18 0.54 0.18
1972 9.6 44990 374403 46087 486631 14.0 70 0.05 0.72 0.84 0.20 0.57 0.21
1973 9.2 45931 381584 47057 469905 14.0 70 0.02 0.72 0.86 0.20 0.58 0.19
1974 9.1 44371 388401 45201 449199 14.0 70 0.02 0.72 0.82 0.21 0.55 0.18
1975 8.9 42085 362588 42909 413610 14.0 70 0.00 0.72 0.77 0.18 0.52 0.15
1976 8.9 43152 365894 44186 425294 14.0 70 0.00 0.72 0.79 0.19 0.54 0.16
1977 9.0 43575 369990 44585 437883 0.0 70 0.01 0.72 0.80 0.19 0.54 0.17
1978 8.9 44364 379460 45473 442543 0.0 70 0.01 0.72 0.82 0.20 0.56 0.17
1979 10.0 44282 382886 45471 497835 0.0 70 0.07 0.72 0.82 0.20 0.56 0.21
1980 10.0 43028 379322 44081 486026 0.0 70 0.08 0.72 0.79 0.20 0.54 0.21
1981 10.0 42726 369118 43592 480418 0.0 70 0.08 0.72 0.78 0.19 0.53 0.20
1982 10.8 41704 378121 42453 508639 0.0 50 0.13 0.49 0.76 0.20 0.51 0.22
1983 11.6 41201 383440 42320 547378 0.0 50 0.18 0.49 0.75 0.21 0.51 0.25
1984 12.0 42450 409880 43584 587797 0.0 50 0.21 0.49 0.78 0.23 0.53 0.28
1985 12.7 43103 426912 44444 638292 0.0 50 0.25 0.49 0.79 0.25 0.54 0.31
1986 15.9 43664 434280 45853 859329 0.0 50 0.47 0.49 0.81 0.26 0.56 0.47
1987 12.7 44093 525576 45378 651309 11.0 38 0.25 0.36 0.82 0.36 0.56 0.32
1988 15.5 45025 675816 46124 837182 15.0 28 0.44 0.24 0.84 0.52 0.57 0.45
1989 14.5 45171 645371 46273 776056 15.0 28 0.37 0.24 0.84 0.48 0.57 0.41
1990 14.3 44664 659640 45501 753455 15.0 28 0.36 0.24 0.83 0.50 0.56 0.39
1991 13.4 43791 600573 44479 679054 15.0 31 0.30 0.28 0.81 0.44 0.54 0.34
1992 14.7 43498 670923 44298 754008 15.0 31 0.39 0.28 0.80 0.51 0.54 0.39
1993 14.2 43183 628743 44128 725217 15.0 31 0.36 0.28 0.79 0.47 0.54 0.37
1994 14.2 43929 641361 44814 736179 15.0 40 0.36 0.37 0.81 0.48 0.55 0.38
1995 15.2 44839 694467 45771 814364 15.0 40 0.42 0.37 0.83 0.54 0.56 0.44
1996 16.7 45572 740991 46763 927265 15.0 40 0.52 0.37 0.85 0.59 0.58 0.52
1997 18.0 47010 806585 48679 1058963 15.0 40 0.61 0.37 0.88 0.66 0.61 0.61
1998 19.1 48994 875753 50966 1190313 15.0 40 0.68 0.37 0.93 0.73 0.64 0.70
1999 20.0 50572 944647 52748 1309108 15.0 40 0.74 0.37 0.97 0.80 0.67 0.79
2000 21.5 51002 997302 53090 1441296 15.0 40 0.84 0.37 0.98 0.86 0.67 0.88
2001 18.2 50474 907581 51488 1135636 15.0 39 0.62 0.37 0.96 0.76 0.65 0.66
2002 16.9 48768 851276 49644 997029 10.0 39 0.53 0.36 0.92 0.70 0.62 0.57
2003 17.5 47972 852203 48964 1030244 10.0 35 0.57 0.32 0.91 0.71 0.61 0.59
2004 19.8 48619 939892 50080 1220403 10.0 35 0.72 0.32 0.92 0.80 0.63 0.72
2005 21.9 48882 1039424 50869 1413462 10.0 35 0.87 0.32 0.93 0.91 0.64 0.86
2006 22.8 49556 1081235 51600 1510669 10.0 35 0.93 0.32 0.94 0.95 0.65 0.93
2007 23.5 50793 1128375 53033 1613104 10.0 35 0.97 0.32 0.97 1.00 0.67 1.00
2008 20.9 48396 1044050 49378 1295238 10.0 35 0.80 0.32 0.92 0.91 0.62 0.78
2009 18.1 46249 916534 46872 1026834 10.0 35 0.61 0.32 0.87 0.77 0.58 0.59
2010 19.9 46057 963920 46831 1149165 10.0 35 0.73 0.32 0.86 0.82 0.58 0.67
2011 19.6 45715 957818 46603 1128092 10.0 35 0.72 0.32 0.85 0.82 0.57 0.66
2012 22.8 46277 1065944 47237 1383327 10.0 35 0.93 0.32 0.87 0.93 0.58 0.84
2013 20.0 46491 971237 47559 1177528 10.0 40 0.74 0.37 0.87 0.83 0.59 0.69
2014 21.5 47570 1019935 48837 1325760 10.0 40 0.84 0.37 0.90 0.88 0.61 0.80
2015 21.6 48964 1067960 50252 1369995 10.0 40 0.84 0.37 0.93 0.94 0.63 0.83
2016 20.7 48148 1030508 49522 1279678 10/0 40 0.79 0.37 0.91 0.90 0.62 0.76
2017 21.5 49122 1072058 51015 1380724 10.0 37 0.84 0.34 0.93 0.94 0.64 0.84
M_melt <- melt(data.frame(top_income_tax[c("Year", "P99_100_z", "Marginal_z")]),
       id.vars = "Year", 
       measure.vars = c("P99_100_z", "Marginal_z"),
       variable.name = c("Variables"),
       value.name = "Values")
str(M_melt)
## 'data.frame':    210 obs. of  3 variables:
##  $ Year     : int  1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 ...
##  $ Variables: Factor w/ 2 levels "P99_100_z","Marginal_z": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Values   : num  0.603 0.617 0.578 0.693 0.589 ...
Rates_melt <- melt(data.frame(top_income_tax[c("Year", "Marginal_z")], Rate_99_z, Rate_1_z),
       id.vars = "Year", 
       measure.vars = c("Marginal_z", "Rate_99_z", "Rate_1_z"),
       variable.name = c("Variables"),
       value.name = "Values")
str(Rates_melt)
## 'data.frame':    315 obs. of  3 variables:
##  $ Year     : int  1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 ...
##  $ Variables: Factor w/ 3 levels "Marginal_z","Rate_99_z",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Values   : num  0 0 0 0.092 0.69 ...
Rates_K_melt <- melt(data.frame(top_income_tax[c("Year", "Marginal_z")], Rate_99_K_z, Rate_1_K_z),
       id.vars = "Year", 
       measure.vars = c("Marginal_z", "Rate_99_K_z", "Rate_1_K_z"),
       variable.name = c("Variables"),
       value.name = "Values")
str(Rates_K_melt)
## 'data.frame':    315 obs. of  3 variables:
##  $ Year     : int  1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 ...
##  $ Variables: Factor w/ 3 levels "Marginal_z","Rate_99_K_z",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Values   : num  0 0 0 0.092 0.69 ...

Save

save.image(file = "US_top_income_shares_vs_tax_rates_2017.RData")