#데이터조작2
#sqldf 패키지
library(sqldf)
## Warning: package 'sqldf' was built under R version 3.3.3
## Loading required package: gsubfn
## Warning: package 'gsubfn' was built under R version 3.3.3
## Loading required package: proto
## Warning: package 'proto' was built under R version 3.3.3
## Loading required package: RSQLite
## Warning: package 'RSQLite' was built under R version 3.3.3
sqldf("select distinct Species from iris")
##      Species
## 1     setosa
## 2 versicolor
## 3  virginica
library(plyr)
## Warning: package 'plyr' was built under R version 3.3.3
#ddply()
ddply(iris,
      .(Species),
      function(sub){
        data.frame(sepal.width.mean=mean(sub$Sepal.Width))
      })
##      Species sepal.width.mean
## 1     setosa            3.428
## 2 versicolor            2.770
## 3  virginica            2.974
ddply(iris,
      .(Species, Sepal.Length > 5.0),
      function(sub){
        data.frame(sepal.width.mean=mean(sub$Sepal.Width))
      })
##      Species Sepal.Length > 5 sepal.width.mean
## 1     setosa            FALSE         3.203571
## 2     setosa             TRUE         3.713636
## 3 versicolor            FALSE         2.233333
## 4 versicolor             TRUE         2.804255
## 5  virginica            FALSE         2.500000
## 6  virginica             TRUE         2.983673
head(baseball)
##            id year stint team lg  g  ab  r  h X2b X3b hr rbi sb cs bb so
## 4   ansonca01 1871     1  RC1    25 120 29 39  11   3  0  16  6  2  2  1
## 44  forceda01 1871     1  WS3    32 162 45 45   9   4  0  29  8  0  4  0
## 68  mathebo01 1871     1  FW1    19  89 15 24   3   1  0  10  2  1  2  0
## 99  startjo01 1871     1  NY2    33 161 35 58   5   1  1  34  4  2  3  0
## 102 suttoez01 1871     1  CL1    29 128 35 45   3   7  3  23  3  1  1  0
## 106 whitede01 1871     1  CL1    29 146 40 47   6   5  1  21  2  2  4  1
##     ibb hbp sh sf gidp
## 4    NA  NA NA NA   NA
## 44   NA  NA NA NA   NA
## 68   NA  NA NA NA   NA
## 99   NA  NA NA NA   NA
## 102  NA  NA NA NA   NA
## 106  NA  NA NA NA   NA
head(subset(baseball, id=="ansonca01"))
##            id year stint team lg  g  ab  r   h X2b X3b hr rbi sb cs bb so
## 4   ansonca01 1871     1  RC1    25 120 29  39  11   3  0  16  6  2  2  1
## 121 ansonca01 1872     1  PH1    46 217 60  90  10   7  0  50  6  6 16  3
## 276 ansonca01 1873     1  PH1    52 254 53 101   9   2  0  36  0  2  5  1
## 398 ansonca01 1874     1  PH1    55 259 51  87   8   3  0  37  6  0  4  1
## 525 ansonca01 1875     1  PH1    69 326 84 106  15   3  0  58 11  6  4  2
## 741 ansonca01 1876     1  CHN NL 66 309 63 110   9   7  2  59 NA NA 12  8
##     ibb hbp sh sf gidp
## 4    NA  NA NA NA   NA
## 121  NA  NA NA NA   NA
## 276  NA  NA NA NA   NA
## 398  NA  NA NA NA   NA
## 525  NA  NA NA NA   NA
## 741  NA  NA NA NA   NA
ddply(baseball, .(id), function(sub){mean(sub$g)})
##             id        V1
## 1    aaronha01 143.39130
## 2    abernte02  40.05882
## 3    adairje01  77.66667
## 4    adamsba01  25.36842
## 5    adamsbo03  85.40000
## 6    adcocjo01 115.23529
## 7    agostju01  36.20000
## 8    aguilri01  38.42105
## 9    aguirha01  27.93750
## 10   ainsmed01  63.41176
## 11   alexado01  24.43478
## 12   alexape01  33.47619
## 13   allendi01 116.60000
## 14   allenet01  85.40000
## 15   allenjo02  24.33333
## 16   almonbi01  72.70588
## 17   alomaro01 125.21053
## 18   alomasa01  82.27778
## 19   alomasa02  62.59091
## 20    aloufe01 109.57895
## 21    alouje01  86.25000
## 22    alouma01  98.05882
## 23    aloumo01 113.35294
## 24   altroni01  10.95238
## 25   alvarwi01  20.40000
## 26    amesre01  26.65000
## 27   anderbr01 114.62500
## 28   anderjo01  96.17647
## 29   anderla02  36.78947
## 30   ansonca01  93.44444
## 31   aparilu01 144.50000
## 32   appieke01  15.77778
## 33   applepe01  20.17647
## 34   applilu01 121.10000
## 35   ashburi01 145.93333
## 36   ashbyal01  80.58824
## 37   ashbyan01  18.93750
## 38   assenpa01  55.25000
## 39   astacpe01  21.66667
## 40   ausmubr01 114.56250
## 41   austiji01  87.77778
## 42   azcuejo01  60.60000
## 43   baergca01 101.87500
## 44   bagweje01 143.33333
## 45   bahnsst01  30.26316
## 46   bailebo01 107.27778
## 47   baileed01  75.75000
## 48   baineha01 104.81481
## 49    bairdo01  32.44444
## 50   bakerdu01 107.31579
## 51   bakerfl01  58.26667
## 52   bancrda01 112.52941
## 53   bandosa01 126.18750
## 54   bankser01 133.05263
## 55   bannifl01  28.73333
## 56   barbest01  25.88889
## 57   barrysh01  73.33333
## 58   bartedi01 106.10526
## 59    basske01  98.18750
## 60   baylodo01 114.60000
## 61   becklja01 108.45455
## 62   bedrost01  48.80000
## 63   belanma01 112.00000
## 64   belchti01  20.66667
## 65    bellbu01 120.25000
## 66    bellda01  87.68750
## 67    bellgu01 108.81250
## 68   bellira01  67.94118
## 69    bellja01 114.61111
## 70   benchjo01 126.94118
## 71   bendech01  31.68750
## 72   benesan01  26.46667
## 73   beniqju01  83.33333
## 74   benitar01  43.11765
## 75   bennech01  70.80000
## 76   bentola01  30.80000
## 77   bentoru01  27.31250
## 78   berenju01  28.82353
## 79   bergmda01  74.94444
## 80    bergmo01  41.43750
## 81   berrayo01 111.57895
## 82   bevacku01  57.05882
## 83   bicheda01 113.60000
## 84   bielemi01  23.06667
## 85   biggicr01 142.50000
## 86   biittla01  81.13333
## 87   blackbu02  23.52941
## 88   blairpa01 108.16667
## 89   blasido01  96.26667
## 90   bluegos01 103.72222
## 91    bluevi01  29.88235
## 92   blylebe01  29.12500
## 93   boddimi01  23.06667
## 94   boggswa01 135.50000
## 95   bondsba01 135.72727
## 96   bondsbo01 123.26667
## 97   bonilbo01 111.21053
## 98   boonebo01 119.15789
## 99   boonebr01 118.66667
## 100  boonera01  76.27778
## 101  bordepa01  49.95455
## 102  bordimi01 114.66667
## 103  bosleth01  52.26667
## 104  bottoji01 124.43750
## 105  boudrlo01 109.73333
## 106   bowala01 132.17647
## 107  bowerfr01  65.31250
## 108  boyercl02 107.81250
## 109  boyerke01 119.64706
## 110  braunst01  83.82353
## 111  bresnro01  80.33333
## 112  bressru01  65.25000
## 113  brettge01 128.90476
## 114  brettke01  22.70588
## 115  breweji01  32.55556
## 116  bridgto01  26.50000
## 117  brilene01  30.13333
## 118  brinked01 108.52941
## 119  brocklo01 130.80000
## 120  brookhu01 109.66667
## 121  broutda01  83.65000
## 122  browncl01  29.13333
## 123  brownge01  73.46667
## 124  brownha01  25.62500
## 125  brownke01  25.31579
## 126  brownmo01  32.86667
## 127  brownol02  76.31250
## 128  brownpe01  73.93750
## 129  brownto01  94.00000
## 130  brunato01 105.88235
## 131  brunege01  17.05263
## 132  bucknbi01 100.68000
## 133   buhlbo01  26.88235
## 134  buhneja01  92.00000
## 135  bunniji01  33.38889
## 136  burbada01  20.27778
## 137  burdele01  31.71429
## 138  burdoja01  62.47368
## 139  burgesm01  84.55000
## 140  burgmto01  46.00000
## 141  burkeje01 129.12500
## 142  burkejo03  18.68750
## 143  burksel01 105.26316
## 144  burnije01 105.87500
## 145  burnsge01 123.53333
## 146  burnsge02  98.21053
## 147  burrira01  28.82353
## 148  burroje01 105.56250
## 149  busbyji01  79.52941
## 150   bushdo01 114.47059
## 151   bushgu01  30.22222
## 152   bushjo01  30.57895
## 153  butlebr01 122.94444
## 154  byrneto01  25.13333
## 155  cabelen01 105.50000
## 156  caldwmi01  31.73333
## 157  callijo01 117.87500
## 158  caminke01 110.00000
## 159  campabe01 116.40000
## 160  campbbi02  46.66667
## 161  candejo01  26.21739
## 162  candito01  23.27778
## 163  cansejo01  99.31579
## 164  carbobe01  63.12500
## 165  cardejo02  96.04762
## 166  cardele01 121.31250
## 167  cardwdo01  26.00000
## 168  carewro01 129.94737
## 169  careyma01 117.90476
## 170  carlsha01  25.66667
## 171  carltst01  27.59259
## 172  carrocl02  43.00000
## 173  cartega01 120.84211
## 174  cartejo01 128.76471
## 175  cartyri01  91.72222
## 176   cashno01 122.88235
## 177  castivi02 103.00000
## 178  cavarph01  92.27273
## 179  cedence01 111.44444
## 180  cepedor01 111.78947
## 181  ceronri01  73.83333
## 182   cervbo01  55.26667
## 183    ceyro01 121.94118
## 184  chambch01 120.83333
## 185  chancfr01  75.70588
## 186  chapmbe01  90.36842
## 187  charlno01  37.66667
## 188  chaseha01 112.88235
## 189  cicoted01  33.60000
## 190  cirilje01 107.80000
## 191  clancji01  29.50000
## 192  clarkfr01 106.76190
## 193  clarkja01 110.77778
## 194  clarkwi02 123.50000
## 195  claytro01 105.40000
## 196  clemeja01  64.27778
## 197  clemero01 135.16667
## 198  clemero02  19.95833
## 199  clinety01  59.46667
## 200   cobbty01 126.45833
## 201  coffmdi01  29.50000
## 202  colavro01 115.06250
## 203  colbrgr01  66.13333
## 204  colemjo05  26.94444
## 205  colesda01  56.29412
## 206  collida02 106.31250
## 207  collied01 113.04000
## 208  colliji01 107.81250
## 209  collish01 112.43750
## 210  conceda01 130.94737
## 211   coneda01  16.31579
## 212  coninje01 101.20000
## 213  connoro01 105.10526
## 214   cookde01  32.52632
## 215  coonejo01  55.80952
## 216  coopece01 111.52941
## 217  coopewa01  70.14286
## 218  coopewi01  32.56250
## 219  corcoto01 122.22222
## 220  cordewi01  77.93750
## 221  cormirh01  35.82353
## 222  covinwe01  71.66667
## 223  cramedo01 111.95000
## 224  crandde01  98.31250
## 225  crawfsa01 132.47368
## 226  crawfwi01  80.66667
## 227  crigelo01  63.25000
## 228  cronijo01 106.20000
## 229  crosefr01  99.00000
## 230  crossla01  98.91304
## 231  crossmo01 112.13333
## 232  crowlte01  54.06250
## 233   cruzjo01 123.84211
## 234  cuccito01 100.23529
## 235  cuellmi01  30.40000
## 236  curtijo01  27.81250
## 237  cuyleki01  98.89474
## 238  dahlebi01 116.33333
## 239  dahlgba01  75.80000
## 240   dalyto01  92.00000
## 241   darkal01 107.52941
## 242  darliro01  26.80000
## 243  darwida01  28.84000
## 244  daubeja01 134.26667
## 245  daultda01  77.40000
## 246  daussho01  36.00000
## 247  davalvi01  76.73684
## 248  davisch01 128.21053
## 249  daviscu01  29.93333
## 250  daviser01  90.33333
## 251  davisge01 118.40000
## 252  davisha01  70.20000
## 253  davisma01  34.72222
## 254  davissp01  81.00000
## 255  davisst02  29.46667
## 256  davisto02  86.91304
## 257  daviswi02 127.84211
## 258  dawsoan01 125.09524
## 259  decindo01 103.06250
## 260  dejesiv01  91.40000
## 261  delahed01 114.68750
## 262  delahji01  79.06667
## 263  deleojo01  24.47059
## 264  delgaca01 123.33333
## 265  dempsri01  70.64000
## 266  dennyje01  82.46667
## 267  derripa01  36.18750
## 268  dickebi01 105.23529
## 269  dicksmu01  31.90000
## 270  dietrbi01  20.44444
## 271  dilonmi01  50.00000
## 272   doakbi01  26.64706
## 273  donovbi01  25.50000
## 274  donovdi01  24.73333
## 275  donovpa01  91.05000
## 276  dooinre01  80.62500
## 277  doolami01 115.20000
## 278  downial01  22.72222
## 279  downibr01 117.20000
## 280  doyleja01  74.47619
## 281  doylela01 117.73333
## 282  drabomo01  29.55000
## 283  driesda01  96.22222
## 284  dropowa01  80.50000
## 285  duceyro01  41.35294
## 286  duffyhu01 102.17647
## 287  duganjo01  96.46667
## 288  duncama01  85.26667
## 289  dunstsh01  86.38095
## 290  durocle01  90.94444
## 291  dwyerji01  57.73913
## 292  dykesji01 103.72727
## 293  easleda01  93.70588
## 294  easlemi01  76.73333
## 295  eckerde01  42.88000
## 296  edmonji01 120.93333
## 297  ehmkeho01  26.81250
## 298  eisenji01  88.87500
## 299  elberki01  86.13333
## 300  elliobo01 123.62500
## 301  ellisdo01  24.25000
## 302  ellswdi01  27.13333
## 303    elybo01  89.40000
## 304  embreal01  32.22222
## 305  ennisde01 126.86667
## 306  ericksc01  14.76471
## 307  etchean01  59.25000
## 308  evansda01 122.13636
## 309  evansdw01 130.30000
## 310  evereca01  87.81250
## 311  eversho01  67.17647
## 312  eversjo01  93.89474
## 313  ewingbu01  73.05556
## 314  faberre01  33.50000
## 315   facero01  50.17647
## 316  fairlro01 106.17391
## 317  farredu01  78.15000
## 318  farretu01  36.87500
## 319  fasseje01  30.57895
## 320  fellebo01  31.66667
## 321  fergujo01  59.58824
## 322  fernasi01  19.25000
## 323  fernato01 113.57895
## 324  ferreri01  89.71429
## 325  ferrewe01  32.23529
## 326  fettemi01  32.26316
## 327  fieldce01  98.00000
## 328  fingero01  55.58824
## 329  finlech01  21.66667
## 330  finlest01 129.15000
## 331  finnelo01  74.70588
## 332  fisheed02  38.33333
## 333   fiskca01 104.12500
## 334  fitzsfr01  25.65000
## 335  flagsir01  76.12500
## 336  flahejo01  69.80000
## 337  flanami01  27.84211
## 338  fletcda01  83.00000
## 339  fletcsc01 100.75000
## 340  floodcu01 117.26667
## 341  floydcl01  90.05882
## 342  foileha01  38.00000
## 343  foleyto02  73.86667
## 344   foliti01  94.22222
## 345  forceda01  60.52941
## 346   fordho01  90.37500
## 347   fordwh01  31.25000
## 348  foremfr01  16.20000
## 349  fornimi01  29.33333
## 350  forscbo01  29.94118
## 351  forscke01  32.56250
## 352  forstte01  38.75000
## 353  fostege01  98.85000
## 354  fournja01 102.00000
## 355    foxne01 124.57895
## 356   foxxji01 110.33333
## 357  francjo01  52.57143
## 358  francju01 101.08000
## 359  francti01  90.47368
## 360  frasech01  30.53333
## 361  freehbi01 118.26667
## 362  freesge02  74.33333
## 363  fregoji01  95.10000
## 364  frencla01  38.00000
## 365   freylo01  95.93750
## 366  fribebe01  86.60000
## 367  frienbo01  35.41176
## 368  friscfr01 121.63158
## 369  frymawo01  31.25000
## 370  furilca01 120.40000
## 371  gaettga01 113.95455
## 372  gagnegr01 119.86667
## 373  galanau01  96.77778
## 374  galaran01 112.85000
## 375  galehde01  23.43750
## 376  galvipu01  43.00000
## 377  gamblos01  88.00000
## 378  gantnji01 105.94118
## 379   gantro01 101.77778
## 380  ganzech01  52.40000
## 381  garbege01  42.40909
## 382  gardnla01 113.11765
## 383  garneph01 103.33333
## 384  garvene01  30.53333
## 385  garvest01 122.73684
## 386  gehrich01 122.26316
## 387  gehrilo01 127.29412
## 388  gerbewa01  95.12500
## 389  gerhajo01  63.00000
## 390  geronce01 101.46667
## 391  gibbojo01  28.26667
## 392  gibsobo01  35.05882
## 393  gibsoki01  96.17647
## 394  ginsbjo01  40.88235
## 395  girarjo01  85.13333
## 396  giustda01  42.87500
## 397  glassja01  86.80000
## 398  glavito02  32.33333
## 399  gleaski01  85.47826
## 400  gomezch02  79.16667
## 401  gonzaal01  93.06667
## 402  gonzaju03  99.35294
## 403  gonzalu01 129.21053
## 404  gonzami01  57.88889
## 405  gonzato01 103.93333
## 406  goodedw01  19.72222
## 407  goodmbi01  95.47059
## 408  goodwto01  80.50000
## 409  gordoto01  35.60000
## 410   gorege01  87.33333
## 411  gosligo01 120.36842
## 412  gossari01  43.60870
## 413   gottji01  36.93333
## 414  gowdyha01  55.26316
## 415  gracema01 140.31250
## 416  graffto01  64.93333
## 417  grantmu01  37.05556
## 418  greenle01  75.73333
## 419  greensh01 121.93750
## 420  grichbo01 118.11765
## 421  griffal01 109.00000
## 422  griffcl01  22.04545
## 423  griffke01  95.31818
## 424  griffke02 125.15789
## 425  griffto02  27.20000
## 426  grimebu01  27.47826
## 427  grimmch01 108.30000
## 428  grimsja01  13.62500
## 429  grissma02 127.35294
## 430  groatdi01 128.60000
## 431   grohhe01  98.58824
## 432  gromest01  26.11111
## 433  groombu01  29.56250
## 434  grossgr01 106.41176
## 435  grosske01  31.13333
## 436  groteje01  78.94444
## 437  grothjo01  73.41176
## 438  grovele01  36.41176
## 439  grubbjo01  83.76471
## 440  guarded01  31.43750
## 441  guerrpe01  96.00000
## 442  guilloz01 117.23529
## 443  gullibi01  26.53333
## 444  gumbeha01  28.44444
## 445   gurala01  23.82353
## 446  guthrma01  35.42105
## 447  gwynnto01 122.00000
## 448   hackst01 121.12500
## 449  haddiha01  35.40000
## 450  hadlebu01  29.33333
## 451  haineje01  29.47368
## 452  hairsje01  57.26667
## 453   halldi01  35.21053
## 454  hallmbi01  93.93750
## 455  hamilda02  88.53333
## 456  hamilea01  25.62500
## 457  hammoje01  63.80000
## 458  hamnegr01  85.05556
## 459  hanseda01  76.87500
## 460  hansero02  86.50000
## 461  hardeme01  29.20000
## 462  harnipe01  21.60000
## 463  harpebr01  62.56250
## 464  harpeto01 113.12500
## 465  harrato01 126.76471
## 466  harrebu01  95.81250
## 467  harrigr01  39.16667
## 468  harrile01  82.73913
## 469  hartnga01  99.50000
## 470  hassero01  74.50000
## 471  hasslan01  21.55556
## 472  hatchbi01  82.20000
## 473  hattogr01  82.00000
## 474  hayesch01  96.68750
## 475  hayesfr01  80.23529
## 476  haywora01  41.11765
## 477  heathcl01  83.23529
## 478  heathje01  92.20000
## 479  heathmi02  88.33333
## 480  hebneri01 100.42105
## 481  heganji01  87.68421
## 482  heganmi01  64.33333
## 483  heilmha01 126.35294
## 484   heldwo01  77.22222
## 485  helliri01   9.80000
## 486  helmsto01  95.66667
## 487  hemslro01  72.40909
## 488  hendeda01  96.12500
## 489  hendeke01  80.22222
## 490  henderi01 106.24138
## 491  hendrge01 102.40000
## 492  henrybi01  29.50000
## 493  herbera01  27.20000
## 494  hermabi01 113.05882
## 495  hernajo01  83.52632
## 496  hernake01 116.00000
## 497  hernaro01  40.10000
## 498   herrto01  94.62500
## 499  hershor01  27.22222
## 500  herzobu01  93.31250
## 501  hickmch01  67.56250
## 502  higbeki01  27.86667
## 503  higgipi01 120.13333
## 504  hillejo01  36.40000
## 505   hillgl01  68.35294
## 506   hillke01  15.64706
## 507   hillma01  49.13333
## 508  hinespa01  79.00000
## 509  hitchst01  15.66667
## 510   hoagmy01  68.00000
## 511  hodgegi01 115.05556
## 512  hoeftbi01  29.61111
## 513  hoernjo01  30.81250
## 514  hoffmtr01  53.87500
## 515  hofmaso01  74.62500
## 516  hollato01  69.87500
## 517  holmeda01  36.13333
## 518  holtzke01  26.82353
## 519  honeyri01  33.37500
## 520  hoopeha01 135.82353
## 521  hootobu01  30.06250
## 522   hoppjo01  77.38889
## 523  hornsro01  94.12500
## 524  hortowi01  96.57143
## 525  houghch01  33.00000
## 526  howarel01 107.00000
## 527  howarfr01 111.47059
## 528  howelja01  37.86667
## 529   hoytwa01  26.96000
## 530  hubbeca01  33.43750
## 531  hudliwi01  25.89474
## 532  hugheto01  27.33333
## 533  hunteca01  34.33333
## 534  hurstbr01  23.75000
## 535  incavpe01  85.60000
## 536  jacksda02  20.94118
## 537  jacksda03  64.00000
## 538  jacksgr01  34.19048
## 539  jacksla01  39.93333
## 540  jacksmi02  53.23529
## 541  jacksre01 134.28571
## 542  jackstr01 110.40000
## 543  jacobba01  98.13333
## 544  jamiech01  93.63158
## 545  jarvike01  11.62500
## 546  javiest01  88.15000
## 547  jeffegr01  97.66667
## 548  jenkife01  33.25000
## 549  jennihu01  64.25000
## 550  johnscl01  72.05263
## 551  johnsde01  84.04762
## 552  johnsja01  76.00000
## 553  johnske02  19.70588
## 554  johnsla03  96.46667
## 555  johnsra05  24.36364
## 556  johnssi01  25.89474
## 557  johnssy01  27.10000
## 558  johnswa01  44.42857
## 559   johnto01  27.17857
## 560  jonesch01  55.87500
## 561  jonesda01  68.12500
## 562  jonesdo01  40.44444
## 563  jonesfi01 119.20000
## 564  jonessa01  32.40909
## 565  jonesto02  42.50000
## 566  joneswi01  99.47059
## 567  joosted01  92.58824
## 568  jordabr01  97.06667
## 569  jorgemi01  81.65000
## 570  joynewa01 127.06250
## 571  judgejo01 103.38095
## 572  jurgebi01 106.82353
## 573  justida01 107.33333
## 574   kaatji01  35.85714
## 575  kalinal01 128.81818
## 576  keefeti01  41.20000
## 577  keelewi01 106.15000
## 578  kellejo01  97.52632
## 579   kellge01  94.47368
## 580  kellyge01  90.11111
## 581  kellyki01  80.83333
## 582  kellypa01  92.33333
## 583  kellyro01  78.64706
## 584  kennebo01  70.61905
## 585  kenneve01  23.31250
## 586   kentje01 120.94444
## 587   kernji01  27.73333
## 588  kessido01 122.23529
## 589    keyji01  29.13333
## 590  killeha01 110.68182
## 591  kingmda01 102.15789
## 592  kirkped01  72.83333
## 593  kisonbr01  25.86667
## 594  kittrma01  63.94737
## 595  kleinch01  92.26316
## 596  kleskry01 108.50000
## 597  klinero01  37.15000
## 598  klippjo01  35.65000
## 599  kluszte01 107.37500
## 600  kneppbo01  28.06250
## 601  knowlda01  45.05882
## 602  koneted01 130.31250
## 603  koosmje01  30.60000
## 604  kraneed01 102.94444
## 605  kressre01  81.82353
## 606  kreutch01  52.44444
## 607  kruegbi01  17.70588
## 608  kuennha01 107.82353
## 609  kuheljo01 110.73684
## 610  kuzavbo01  14.26667
## 611  labincl01  34.26667
## 612   lacyle01  89.58824
## 613  lajoina01 112.72727
## 614   lampde01  39.93750
## 615  landrho01  48.25000
## 616  langsma01  25.52941
## 617  laniema01  21.86667
## 618  lankfra01 113.40000
## 619  lansfca01 124.13333
## 620  lapoida01  19.60000
## 621  larkiba01 114.73684
## 622  larocda01  43.26667
## 623  larsedo01  28.23529
## 624   laryfr01  24.13333
## 625   laryly01  81.37500
## 626  lathaar01  90.38889
## 627    lauch01  35.13333
## 628  lawtoma02  88.93333
## 629    lawve01  32.25000
## 630  lazzeto01 116.00000
## 631  leachto01 107.80000
## 632  learyti01  19.53333
## 633    leebi02  29.18750
## 634    leeth01  23.43750
## 635  leibone01  84.53333
## 636  leiteal01  19.14286
## 637  lemonbo01  41.00000
## 638  lemonch01 124.25000
## 639  leonadu02  32.00000
## 640  leonaje01  88.43750
## 641  lewisda01  90.20000
## 642  leyriji01  60.20000
## 643  lindbpa01  41.06250
## 644  loaizes01  15.00000
## 645  lockmwh01  98.00000
## 646  loftoke01 105.15000
## 647  lolicmi01  37.00000
## 648  lollash01  97.33333
## 649  lombaer01 109.00000
## 650  lonboji01  28.40000
## 651   longhe01 110.23529
## 652  lopesda01 100.66667
## 653  lopezal01  97.50000
## 654  lopezja01  93.93750
## 655   lowebo01  95.68421
## 656  lowenjo01  85.50000
## 657  lowrepe01  93.40000
## 658  lucasre01  56.68750
## 659    lummi01  94.81250
## 660  luquedo01  27.95000
## 661  luzingr01 121.40000
## 662   lylesp01  49.94444
## 663   lynnfr01 109.38889
## 664  lyonste01  33.57143
## 665  mabryjo01  77.70588
## 666  macfada01  24.73684
## 667  maddoga01 109.31250
## 668  maddugr01  30.73913
## 669  maddumi01  27.76471
## 670  madlobi01 100.33333
## 671  magadda01  93.05882
## 672  mageesh01 122.76471
## 673  majesha01  62.88235
## 674  maldoca01  78.33333
## 675  mancugu01  81.11111
## 676   mannle01  78.84211
## 677  mantlmi01 133.38889
## 678  manushe01 105.68421
## 679  maranra01 116.08696
## 680  marbefi01  36.73333
## 681  maricju01  29.68750
## 682  marquru01  28.21053
## 683  marshmi01  42.64706
## 684  martibu01  61.70588
## 685  martida01  95.95000
## 686  martide01  28.83333
## 687  martied01 114.16667
## 688  martipe02  18.62500
## 689  martiti01  36.53333
## 690  martiti02 126.43750
## 691   masiph01  81.93333
## 692  mastewa02  25.12500
## 693  mathebo01  38.93750
## 694  mathech01  35.88889
## 695  matheed01 132.83333
## 696  matthga01 119.58824
## 697   maulal01  25.62500
## 698  maxvida01  83.70588
## 699  maxwech01  70.81250
## 700  maybejo01 101.25000
## 701   mayele01  80.50000
## 702    mayle01 115.05556
## 703    maymi01  70.11765
## 704  maynebr01  75.23529
## 705    mayru01  29.77778
## 706   maysca01  31.37500
## 707   mayswi01 130.08696
## 708  mazerbi01 127.23529
## 709  mazzile01  86.76471
## 710  mcauldi01 110.18750
## 711  mcbrige01  97.58824
## 712  mccarti01  79.54167
## 713  mcclubo01  31.77273
## 714  mccormi03  28.64706
## 715  mccovwi01 112.52174
## 716  mcculcl01  73.20000
## 717  mcdanli01  44.90909
## 718  mcdowsa01  26.81250
## 719  mcelrch01  34.76471
## 720  mcfared01  59.60000
## 721  mcgeewi01 115.84211
## 722  mcgrajo01  64.64706
## 723  mcgratu01  43.47368
## 724  mcgrifr01 117.14286
## 725  mcguide01  57.45161
## 726  mcgwima01 110.23529
## 727  mcinnst01 112.00000
## 728  mclemma01  91.60000
## 729  mclisca01  24.53333
## 730  mcmahdo02  38.00000
## 731  mcmanma01 114.43750
## 732  mcmilro01 123.11765
## 733  mcmulke01  93.11765
## 734  mcnaier01  83.40000
## 735  mcphebi01 118.61111
## 736  mcraeha01 109.68421
## 737  mcwilla01  25.33333
## 738  meadole01  29.29412
## 739  medwijo01  99.20000
## 740  merceor01  92.73333
## 741  merckke01  33.80000
## 742  merklfr01  91.00000
## 743   mesajo01  44.19048
## 744  micelda01  33.83333
## 745  michaca01  85.86667
## 746  miksied01  61.29412
## 747  milancl01 123.87500
## 748  millebi02 107.05882
## 749  millebo04  30.73913
## 750  milleri01  98.80000
## 751  millest01  42.11765
## 752  minchdo01  93.33333
## 753  minosmi01 101.94444
## 754  mintogr01  41.88235
## 755  mitchcl01  32.50000
## 756  mitchke01  81.53333
## 757   mizejo01 117.75000
## 758  mogrige01  25.12500
## 759  molitpa01 127.76190
## 760  mondari01 104.52632
## 761  mondera01  95.31250
## 762  moneydo01 107.50000
## 763  montawi01  81.60000
## 764  moorech02  88.93333
## 765  mooreea01  24.25000
## 766  moorege03  69.46667
## 767  moralje01  96.06667
## 768  morgajo02 120.40909
## 769  morgami01  21.76000
## 770  morrija02  31.55556
## 771  morriji01  72.60000
## 772  morrijo01  84.33333
## 773  moseswa01 111.77778
## 774   mossle01  54.93333
## 775   motama01  73.14286
## 776  moyerja01  15.78261
## 777  muellra01  61.56250
## 778  mulhote01  23.19231
## 779  mullato01  52.26667
## 780  mullige01  40.93333
## 781  mullira01  82.81250
## 782  mumphje01  99.06250
## 783  murcebo01 106.00000
## 784  murphda02  93.50000
## 785  murphda05 114.73684
## 786  murphto02  29.53333
## 787  murrada01  34.53333
## 788  murraed02 131.56522
## 789  musiast01 137.54545
## 790  mussimi01  14.11765
## 791  myattgl01  59.05882
## 792   myerbu01 106.83333
## 793  myersgr01  50.36364
## 794  myershy01  81.87500
## 795  myersmi01  50.40000
## 796  myersra01  46.13333
## 797   nashbi01 103.26667
## 798  neaglde01  26.06667
## 799   nehfar01  25.77778
## 800  nelsoca01  54.46667
## 801  nelsoje01  36.25000
## 802  nettlgr01 122.72727
## 803  nevinph01  76.06250
## 804  newhoha01  28.94118
## 805  newsobo01  21.00000
## 806  nichobi01 104.81250
## 807  nichoki01  40.56250
## 808  niekrjo01  28.24000
## 809  niekrph01  33.30769
## 810  niemabo01  74.20000
## 811  nixonot01  94.94444
## 812  norenir01  72.86667
## 813  normafr01  21.52632
## 814  northro01  72.26667
## 815  nunezed01  28.46667
## 816  nuxhajo01  32.64706
## 817  oberkke01  84.31579
## 818  obriech01  47.05882
## 819  oconnja01  65.95455
## 820   odombl01  26.80000
## 821  oeschjo01  24.40000
## 822  ofarrbo01  62.16667
## 823  offerjo01  97.11765
## 824  oglivbe01 109.62500
## 825  ojedabo01  23.53333
## 826  olerujo01 124.11111
## 827  olivaom01  18.93333
## 828  olivato01 111.73333
## 829  oliveal01 118.40000
## 830  oliveda02  15.93750
## 831  olivejo01  71.73333
## 832  olsongr01  36.35294
## 833  olsoniv01 104.93333
## 834  oneilpa01 120.76471
## 835  oneilst01  93.52941
## 836  oroscje01  45.30769
## 837  orourji01  86.91304
## 838   ortajo01 109.68750
## 839   orthal01  37.62500
## 840  osteecl01  29.40000
## 841  osterfr01  23.47059
## 842   otisam01 117.52941
## 843    ottme01 124.09091
## 844  pacioto01  69.60000
## 845  pafkoan01 102.88889
## 846  paganjo01  82.87500
## 847  palmede01  90.46667
## 848  palmeji01  30.31579
## 849  palmera01 141.55000
## 850  pappami01  27.73684
## 851  parenma01  31.60000
## 852   parkch01  19.33333
## 853  parkeda01 123.30000
## 854  parrila01 118.18750
## 855  parrila02  99.40000
## 856  pascuca02  28.52632
## 857  paskedo01 114.40000
## 858  peckiro01 111.77778
## 859  peitzhe01  77.12500
## 860   penaal01  27.94444
## 861   penaor01  23.83333
## 862   penato01 104.63158
## 863  pendlte01 118.31250
## 864  pennohe01  26.95652
## 865  perezne01  93.53333
## 866  perezto01 120.73913
## 867  perkicy01  68.88235
## 868  perraro01  49.13333
## 869  perryga01  31.48000
## 870  perryji01  33.42105
## 871  petryda01  24.66667
## 872  pfefffr01  98.23529
## 873  pfeffje01  23.46667
## 874  phillda01  79.33333
## 875  phillto02 108.05000
## 876  piazzmi01 106.22222
## 877  picinva01  54.57895
## 878  piercbi02  34.22222
## 879  piersji01  91.26316
## 880  pinielo01  97.05556
## 881  pinsova01 137.16667
## 882   pippwa01 124.80000
## 883  pizarju01  22.54545
## 884  planked01  37.05882
## 885  plesada01  49.80000
## 886  plunker01  41.37500
## 887  podrejo01  28.87500
## 888  polleho01  23.94118
## 889  polonlu01  81.11765
## 890  pooleji02  26.37500
## 891  portebo01  20.12500
## 892  porteda02 104.82353
## 893  portuma01  19.87500
## 894   postwa01  70.82353
## 895  pottene01  23.46667
## 896  powelbo01 120.11765
## 897  powelja01  34.41176
## 898  powerte01  37.66667
## 899  powervi01 108.46667
## 900  prattto02  44.13333
## 901  princto01  28.83333
## 902   puhlte01 102.06667
## 903  purcebl01  68.56250
## 904  quantpa01  31.88235
## 905  quinnja01  32.12500
## 906  quinnjo02  88.40000
## 907  quirkja01  46.85714
## 908  raffeke01  24.81250
## 909  raganpa01  19.06667
## 910  raineti01 104.25000
## 911  ramirma02 130.00000
## 912  ramospe01  40.94118
## 913  randowi01 115.89474
## 914  rasmude01  17.20000
## 915  rawlijo01  72.00000
## 916  readyra01  51.80000
## 917  reardje01  48.88889
## 918   reedje02  64.94737
## 919   reedri01  13.88235
## 920   reedro01  37.70000
## 921   reedst01  42.17647
## 922  reesepe01 135.37500
## 923  reganph01  36.86667
## 924  remlimi01  38.75000
## 925  renkost01  27.17647
## 926  reuscri01  27.57143
## 927  reussje01  25.24000
## 928  reynocr01  99.40000
## 929  rhodear01  16.31250
## 930  rhoderi01  26.68750
## 931   ricede01  65.45000
## 932   riceji01 130.56250
## 933   ricesa01 120.20000
## 934  richaha01  88.73333
## 935  richepe01  29.73333
## 936  righeda01  42.23529
## 937  ripkeca01 142.90476
## 938  rivermi01  91.75000
## 939  rixeyep01  33.04762
## 940  roberda05  28.25000
## 941  roberro01  32.76190
## 942  robinbi02  86.58824
## 943  robinbr01 125.91304
## 944  robindo01  32.41176
## 945  robined01  77.35294
## 946  robinfr02 127.63636
## 947  robinwi01  76.16667
## 948  rodriau01 100.85000
## 949  rodriiv01 126.58824
## 950  rogerke01  24.95000
## 951  rojasco01 107.17647
## 952   roofph01  47.61111
## 953   rootch01  37.17647
## 954   rosepe01 142.48000
## 955  roushed01 103.52632
## 956   rowesc01  30.68750
## 957  roystje01  84.00000
## 958   rudijo01  96.68750
## 959   ruelmu01  73.40000
## 960  ruffire01  38.34783
## 961  russebi01 121.16667
## 962  russeja01  34.11765
## 963  russeje01  36.93750
## 964   ruthba01 113.77273
## 965  ruthvdi01  22.68750
## 966   ryanji01 111.77778
## 967   ryanno01  29.88889
## 968  saberbr01  20.29412
## 969  sadecra01  26.68182
## 970  sallesl01  29.75000
## 971  samueju01  90.52632
## 972  sanchre01  82.77778
## 973  sandbry01 135.25000
## 974  sandere02 104.52941
## 975  sandesc01  23.65000
## 976  santibe01  98.90000
## 977  santoro01 149.53333
## 978  sauerha01  87.43750
## 979  schaege01  71.87500
## 980  schalra01  97.88889
## 981  schanwa01  96.94737
## 982  schatda01  25.55000
## 983  schilcu01  24.19048
## 984  schmija01  20.46667
## 985  schmijo01  20.44444
## 986  schmimi01 133.55556
## 987  schoere01 105.52381
## 988  schofdi01  55.04167
## 989  schofdi02  85.50000
## 990  schreos01  59.66667
## 991  schulfr01 106.23529
## 992  scottev01 110.26667
## 993  scottge02 127.12500
## 994  seaneru01  24.89474
## 995  seaveto01  30.77273
## 996  seguida01  80.88889
## 997  seguidi01  40.00000
## 998   seleaa01  11.20000
## 999  seminan01  81.50000
## 1000 servisc01  15.73333
## 1001 severha01  81.76471
## 1002 sewellu01  81.50000
## 1003 seymocy01  84.88889
## 1004 shaffor01  58.06667
## 1005 shantbo01  30.42105
## 1006  shawbo01  28.86667
## 1007 shawkbo01  30.50000
## 1008 sheckji01 111.68421
## 1009 sheffga01 107.36364
## 1010 sherdbi01  32.29412
## 1011 shortch02  33.73333
## 1012 shouncl01  26.70588
## 1013 siebeso01  27.00000
## 1014 sierrru01  87.44000
## 1015 sievero01 104.83333
## 1016 simmoal01 105.47619
## 1017 simmocu01  26.47826
## 1018 simmote01 116.95238
## 1019 singebi01  21.60000
## 1020 singlke01 138.80000
## 1021 sislege01 128.43750
## 1022 skowrbi01 103.62500
## 1023 slatoji01  29.17647
## 1024 slaugdo01  78.05882
## 1025 slaugen01 108.18182
## 1026 smallro02 103.31250
## 1027 smithbo02  46.37500
## 1028 smithea02  57.33333
## 1029 smithel01  77.12500
## 1030 smithge01 106.87500
## 1031 smithja03  87.87500
## 1032 smithle02  48.71429
## 1033 smithlo01  84.89474
## 1034 smithoz01 135.42105
## 1035 smithpo01  69.50000
## 1036 smithre06 110.38889
## 1037 smithsh01  25.40000
## 1038 smithza01  25.73333
## 1039 smoltjo01  36.73684
## 1040 snidedu01 119.05556
## 1041  snowjt01 114.33333
## 1042 snydefr01  81.88235
## 1043 snydepo01  51.66667
## 1044  sojolu01  56.53333
## 1045  sosasa01 123.89474
## 1046 spahnwa01  35.59091
## 1047 speaktr01 126.77273
## 1048 speiech01 102.72727
## 1049 spencji01  91.35294
## 1050 spilmha01  37.53333
## 1051 splitpa01  28.66667
## 1052 sprinru01  34.47059
## 1053 staintu01  54.46667
## 1054 stairma01  90.64706
## 1055 stalege01  33.68421
## 1056 stanlfr01  54.40000
## 1057 stanlmi01 101.06667
## 1058 stanlmi02  81.50000
## 1059 stantmi02  34.58333
## 1060 stargwi01 112.38095
## 1061 startjo01  66.93750
## 1062 staubru01 122.95833
## 1063 stengca01  85.13333
## 1064 stephve01 101.17647
## 1065 stewada01  27.52632
## 1066 stiebda01  26.68750
## 1067 stinnke01  45.87500
## 1068 stobbch01  28.75000
## 1069 stottto01  24.80000
## 1070 stoveha01  92.87500
## 1071 strawda01  93.11765
## 1072 strunam01  75.60000
## 1073 sturdto01  22.40000
## 1074 sullibi03  71.68750
## 1075 sundbji01 115.41176
## 1076 suppaje01  12.66667
## 1077 surhobj01 115.65000
## 1078 sutclri01  24.52632
## 1079 suttodo01  31.40000
## 1080 suttoez01  70.16667
## 1081 sweenma01  74.66667
## 1082 swiftbo01  66.73333
## 1083 swindgr01  34.52632
## 1084 tananfr01  27.78261
## 1085 tanneje01  31.62500
## 1086 tapanke01  23.80000
## 1087 tartada01  93.73333
## 1088 tavarju01  45.53333
## 1089 tayloto02 104.52381
## 1090 tayloza02  51.00000
## 1091 tebbebi01  77.46667
## 1092 tekulke01  61.76471
## 1093 templga01 122.29412
## 1094 tenacge01 103.66667
## 1095 tennefr02 117.29412
## 1096 terryad01  41.68750
## 1097 terryra01  22.60000
## 1098 theveto01  81.93333
## 1099 thomade01  99.81250
## 1100 thomafr03  88.30000
## 1101 thomafr04 125.05556
## 1102 thomage01  42.81250
## 1103 thomago01  95.66667
## 1104 thomato02  26.60000
## 1105 thomeji01 118.29412
## 1106 thompmi02  90.60000
## 1107 thompsa01  93.80000
## 1108 thomsbo01 104.64706
## 1109  thondi01  92.46667
## 1110 thornan01 104.33333
## 1111 tiantlu01  30.15789
## 1112 tidrodi01  41.33333
## 1113 timlimi01  39.35000
## 1114 tinkejo01 120.26667
## 1115 torgeea01  92.66667
## 1116 torrejo01 122.72222
## 1117 torremi01  23.76190
## 1118 trachst01  21.23529
## 1119 trammal01 114.65000
## 1120 traynpi01 114.17647
## 1121 trevial01  58.68750
## 1122 trillma01  98.88889
## 1123 troutdi01  33.43750
## 1124 truckvi01  27.21053
## 1125 tucketo01 112.46667
## 1126 turnete01  97.58824
## 1127  uhlege01  38.00000
## 1128 unserde01 112.43750
## 1129 valdeis01  16.60000
## 1130 valenfe01  26.27778
## 1131 valenjo03 104.87500
## 1132  valoel01  78.52174
## 1133 vanceda01  24.55556
## 1134 vandejo02  85.75000
## 1135 vanhage01 110.22222
## 1136 vaughgr01 108.18750
## 1137 veachbo01 113.81250
## 1138 velarra01  70.72222
## 1139 venturo01 122.29412
## 1140 vernomi01 114.71429
## 1141 villoro01  26.05882
## 1142 violafr01  26.31250
## 1143 vizcajo01  86.66667
## 1144 vizquom01 136.21053
## 1145 wagneha01  44.80000
## 1146 wagneho01 132.95238
## 1147 wakefti01  11.66667
## 1148 walberu01  34.18750
## 1149 walkedi02  95.25000
## 1150 walkege02 118.93333
## 1151 walkela01 110.44444
## 1152 walketo04  85.86667
## 1153 wallabo01  95.32000
## 1154 wallati01 122.88889
## 1155 wallide01  66.89474
## 1156 waltebu01  34.04762
## 1157 wanerll01  94.90476
## 1158 wanerpa01 115.86364
## 1159  wardjo01 107.35294
## 1160 warnejo01  59.61111
## 1161 warnelo01  28.68750
## 1162 washicl01  91.04762
## 1163 watsobo01  87.23810
## 1164 weathda01  34.95652
## 1165 webstmi01  74.41176
## 1166 wehmehe01  25.81250
## 1167 welchbo01  30.58824
## 1168 wellsda01  20.45833
## 1169 wertzvi01  88.66667
## 1170  westsa01 103.11765
## 1171 weyhigu01  30.66667
## 1172 wheatza01 126.84211
## 1173 whitalo01 125.78947
## 1174 whitede01  78.00000
## 1175 whitede03 114.17647
## 1176 whiteea01  32.23529
## 1177 whitefr01 129.11111
## 1178 whitema01  62.60000
## 1179 whiteri01  28.00000
## 1180 whitero01 125.40000
## 1181 whitero02  86.70588
## 1182 whitsed01  27.11765
## 1183 whitter01  88.53333
## 1184 wickmbo01  37.94737
## 1185 wightbi01  21.68750
## 1186 wilcomi01  24.81250
## 1187 wilheho01  41.15385
## 1188 wilkiri01  48.00000
## 1189 willibe02 129.75000
## 1190 willibi01 138.22222
## 1191 willicy01 105.36842
## 1192 willidi02  68.20000
## 1193 willige02  73.00000
## 1194 willima04 109.76471
## 1195 willist02  32.20000
## 1196 willite01 120.63158
## 1197 williwo02  23.43750
## 1198 willsma01 129.46667
## 1199 wilsoar01  54.13333
## 1200 wilsoji01  80.26316
## 1201 wilsowi02 113.36842
## 1202 winfida01 129.26087
## 1203 wingoiv01  78.05882
## 1204  wiseri01  28.38889
## 1205 witasja01  18.93333
## 1206  wittbo01  18.78947
## 1207 wohlfji01  81.33333
## 1208 womacto01  81.43750
## 1209  woodge01  85.33333
## 1210 woodlge01  94.52632
## 1211  woodwi01  36.16667
## 1212 worreti01  36.61111
## 1213 worthal01  37.62500
## 1214 wyattwh01  21.52941
## 1215  wynnea01  34.60870
## 1216  wynnji01 120.00000
## 1217 yastrca01 143.82609
## 1218 yeagest01  84.60000
## 1219  yorkto01  64.20000
## 1220  yosted01 117.16667
## 1221 youngcy01  39.91304
## 1222 younger01  96.11111
## 1223 youngjo02  88.00000
## 1224 yountro01 142.80000
## 1225 zachato01  22.75000
## 1226  zaungr01  68.53333
## 1227 zeileto01 102.76190
## 1228 zimmech01  64.00000
#transform(),summarise(),subset()
head(ddply(baseball, .(id), transform, cyear=year-min(year)+1))
##          id year stint team lg   g  ab   r   h X2b X3b hr rbi sb cs bb so
## 1 aaronha01 1954     1  ML1 NL 122 468  58 131  27   6 13  69  2  2 28 39
## 2 aaronha01 1955     1  ML1 NL 153 602 105 189  37   9 27 106  3  1 49 61
## 3 aaronha01 1956     1  ML1 NL 153 609 106 200  34  14 26  92  2  4 37 54
## 4 aaronha01 1957     1  ML1 NL 151 615 118 198  27   6 44 132  1  1 57 58
## 5 aaronha01 1958     1  ML1 NL 153 601 109 196  34   4 30  95  4  1 59 49
## 6 aaronha01 1959     1  ML1 NL 154 629 116 223  46   7 39 123  8  0 51 54
##   ibb hbp sh sf gidp cyear
## 1  NA   3  6  4   13     1
## 2   5   3  7  4   20     2
## 3   6   2  5  7   21     3
## 4  15   0  0  3   13     4
## 5  16   1  0  3   21     5
## 6  17   4  0  9   19     6
head(ddply(baseball, .(id), mutate, cyear=year-min(year)+1, log_cyear=log(cyear)))
##          id year stint team lg   g  ab   r   h X2b X3b hr rbi sb cs bb so
## 1 aaronha01 1954     1  ML1 NL 122 468  58 131  27   6 13  69  2  2 28 39
## 2 aaronha01 1955     1  ML1 NL 153 602 105 189  37   9 27 106  3  1 49 61
## 3 aaronha01 1956     1  ML1 NL 153 609 106 200  34  14 26  92  2  4 37 54
## 4 aaronha01 1957     1  ML1 NL 151 615 118 198  27   6 44 132  1  1 57 58
## 5 aaronha01 1958     1  ML1 NL 153 601 109 196  34   4 30  95  4  1 59 49
## 6 aaronha01 1959     1  ML1 NL 154 629 116 223  46   7 39 123  8  0 51 54
##   ibb hbp sh sf gidp cyear log_cyear
## 1  NA   3  6  4   13     1 0.0000000
## 2   5   3  7  4   20     2 0.6931472
## 3   6   2  5  7   21     3 1.0986123
## 4  15   0  0  3   13     4 1.3862944
## 5  16   1  0  3   21     5 1.6094379
## 6  17   4  0  9   19     6 1.7917595
head(ddply(baseball, .(id), summarise, minyear=min(year)))
##          id minyear
## 1 aaronha01    1954
## 2 abernte02    1955
## 3 adairje01    1958
## 4 adamsba01    1906
## 5 adamsbo03    1946
## 6 adcocjo01    1950
head(ddply(baseball, .(id), summarise, minyear=min(year), maxyear=max(year)))
##          id minyear maxyear
## 1 aaronha01    1954    1976
## 2 abernte02    1955    1972
## 3 adairje01    1958    1970
## 4 adamsba01    1906    1926
## 5 adamsbo03    1946    1959
## 6 adcocjo01    1950    1966
head(ddply(baseball, .(id), subset, g==max(g)))
##          id year stint team lg   g  ab   r   h X2b X3b hr rbi sb cs bb so
## 1 aaronha01 1963     1  ML1 NL 161 631 121 201  29   4 44 130 31  5 78 94
## 2 abernte02 1965     1  CHN NL  84  18   1   3   0   0  0   2  0  0  0  7
## 3 adairje01 1965     1  BAL AL 157 582  51 151  26   3  7  66  6  4 35 65
## 4 adamsba01 1913     1  PIT NL  43 114  13  33   6   2  0  13  0 NA  1 16
## 5 adamsbo03 1952     1  CIN NL 154 637  85 180  25   4  6  48 11  9 49 67
## 6 adcocjo01 1953     1  ML1 NL 157 590  71 168  33   6 18  80  3  2 42 82
##   ibb hbp sh sf gidp
## 1  18   0  0  5   11
## 2   0   1  3  0    0
## 3   7   2  4  2   26
## 4  NA   0  3 NA   NA
## 5  NA   0  8 NA   15
## 6  NA   2  6 NA   22
#reshape2 패키지
library(reshape2)
## Warning: package 'reshape2' was built under R version 3.3.3
str(french_fries)
## 'data.frame':    696 obs. of  9 variables:
##  $ time     : Factor w/ 10 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ treatment: Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
##  $ subject  : Factor w/ 12 levels "3","10","15",..: 1 1 2 2 3 3 4 4 5 5 ...
##  $ rep      : num  1 2 1 2 1 2 1 2 1 2 ...
##  $ potato   : num  2.9 14 11 9.9 1.2 8.8 9 8.2 7 13 ...
##  $ buttery  : num  0 0 6.4 5.9 0.1 3 2.6 4.4 3.2 0 ...
##  $ grassy   : num  0 0 0 2.9 0 3.6 0.4 0.3 0 3.1 ...
##  $ rancid   : num  0 1.1 0 2.2 1.1 1.5 0.1 1.4 4.9 4.3 ...
##  $ painty   : num  5.5 0 0 0 5.1 2.3 0.2 4 3.2 10.3 ...
head(french_fries)
##    time treatment subject rep potato buttery grassy rancid painty
## 61    1         1       3   1    2.9     0.0    0.0    0.0    5.5
## 25    1         1       3   2   14.0     0.0    0.0    1.1    0.0
## 62    1         1      10   1   11.0     6.4    0.0    0.0    0.0
## 26    1         1      10   2    9.9     5.9    2.9    2.2    0.0
## 63    1         1      15   1    1.2     0.1    0.0    1.1    5.1
## 27    1         1      15   2    8.8     3.0    3.6    1.5    2.3
m <- melt(id=1:4, french_fries)
head(m)
##   time treatment subject rep variable value
## 1    1         1       3   1   potato   2.9
## 2    1         1       3   2   potato  14.0
## 3    1         1      10   1   potato  11.0
## 4    1         1      10   2   potato   9.9
## 5    1         1      15   1   potato   1.2
## 6    1         1      15   2   potato   8.8
#dcast()
smiths
##      subject time age weight height
## 1 John Smith    1  33     90   1.87
## 2 Mary Smith    1  NA     NA   1.54
(m <- melt(id=1:2, smiths))
##      subject time variable value
## 1 John Smith    1      age 33.00
## 2 Mary Smith    1      age    NA
## 3 John Smith    1   weight 90.00
## 4 Mary Smith    1   weight    NA
## 5 John Smith    1   height  1.87
## 6 Mary Smith    1   height  1.54
(x <- dcast(m, subject + time~...))
##      subject time age weight height
## 1 John Smith    1  33     90   1.87
## 2 Mary Smith    1  NA     NA   1.54
identical(x, smiths)
## [1] TRUE
dcast(melt(id=1:2, smiths, na.rm=TRUE), subject+time~...)
##      subject time age weight height
## 1 John Smith    1  33     90   1.87
## 2 Mary Smith    1  NA     NA   1.54
head(french_fries)
##    time treatment subject rep potato buttery grassy rancid painty
## 61    1         1       3   1    2.9     0.0    0.0    0.0    5.5
## 25    1         1       3   2   14.0     0.0    0.0    1.1    0.0
## 62    1         1      10   1   11.0     6.4    0.0    0.0    0.0
## 26    1         1      10   2    9.9     5.9    2.9    2.2    0.0
## 63    1         1      15   1    1.2     0.1    0.0    1.1    5.1
## 27    1         1      15   2    8.8     3.0    3.6    1.5    2.3
ffm <- melt(id=1:4, french_fries)
head(ffm)
##   time treatment subject rep variable value
## 1    1         1       3   1   potato   2.9
## 2    1         1       3   2   potato  14.0
## 3    1         1      10   1   potato  11.0
## 4    1         1      10   2   potato   9.9
## 5    1         1      15   1   potato   1.2
## 6    1         1      15   2   potato   8.8
x <- dcast(ffm, time+treatment+subject+rep ~variable)
head(x)
##   time treatment subject rep potato buttery grassy rancid painty
## 1    1         1       3   1    2.9     0.0    0.0    0.0    5.5
## 2    1         1       3   2   14.0     0.0    0.0    1.1    0.0
## 3    1         1      10   1   11.0     6.4    0.0    0.0    0.0
## 4    1         1      10   2    9.9     5.9    2.9    2.2    0.0
## 5    1         1      15   1    1.2     0.1    0.0    1.1    5.1
## 6    1         1      15   2    8.8     3.0    3.6    1.5    2.3
rownames(french_fries) <- NULL
rownames(x) <- NULL
identical(french_fries, x)
## [1] TRUE