# 2025-05-26
rm(list=ls())
ls()
## character(0)
data("airquality") # 데이터 불러오기
summary(airquality)
##      Ozone           Solar.R           Wind             Temp      
##  Min.   :  1.00   Min.   :  7.0   Min.   : 1.700   Min.   :56.00  
##  1st Qu.: 18.00   1st Qu.:115.8   1st Qu.: 7.400   1st Qu.:72.00  
##  Median : 31.50   Median :205.0   Median : 9.700   Median :79.00  
##  Mean   : 42.13   Mean   :185.9   Mean   : 9.958   Mean   :77.88  
##  3rd Qu.: 63.25   3rd Qu.:258.8   3rd Qu.:11.500   3rd Qu.:85.00  
##  Max.   :168.00   Max.   :334.0   Max.   :20.700   Max.   :97.00  
##  NA's   :37       NA's   :7                                       
##      Month            Day      
##  Min.   :5.000   Min.   : 1.0  
##  1st Qu.:6.000   1st Qu.: 8.0  
##  Median :7.000   Median :16.0  
##  Mean   :6.993   Mean   :15.8  
##  3rd Qu.:8.000   3rd Qu.:23.0  
##  Max.   :9.000   Max.   :31.0  
## 
# Ozone? 오른쪽 꼬리분포가 맞습니다.
# 중앙값(median)=31.50<평균값(mean)=42.13

# install.packages("reshape2")
library(reshape2)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
# 앞 6행을 탐색하는 함수 head()
head(airquality)
##   Ozone Solar.R Wind Temp Month Day
## 1    41     190  7.4   67     5   1
## 2    36     118  8.0   72     5   2
## 3    12     149 12.6   74     5   3
## 4    18     313 11.5   62     5   4
## 5    NA      NA 14.3   56     5   5
## 6    28      NA 14.9   66     5   6
tail(airquality)
##     Ozone Solar.R Wind Temp Month Day
## 148    14      20 16.6   63     9  25
## 149    30     193  6.9   70     9  26
## 150    NA     145 13.2   77     9  27
## 151    14     191 14.3   75     9  28
## 152    18     131  8.0   76     9  29
## 153    20     223 11.5   68     9  30
class(airquality)
## [1] "data.frame"
# melt() 함수는 데이터프레임을 "넓은 형식(wide format)"에서 
# "긴 형식(long format)"으로 변환
melt(airquality, id.vars = c("Month", "Day"))
##     Month Day variable value
## 1       5   1    Ozone  41.0
## 2       5   2    Ozone  36.0
## 3       5   3    Ozone  12.0
## 4       5   4    Ozone  18.0
## 5       5   5    Ozone    NA
## 6       5   6    Ozone  28.0
## 7       5   7    Ozone  23.0
## 8       5   8    Ozone  19.0
## 9       5   9    Ozone   8.0
## 10      5  10    Ozone    NA
## 11      5  11    Ozone   7.0
## 12      5  12    Ozone  16.0
## 13      5  13    Ozone  11.0
## 14      5  14    Ozone  14.0
## 15      5  15    Ozone  18.0
## 16      5  16    Ozone  14.0
## 17      5  17    Ozone  34.0
## 18      5  18    Ozone   6.0
## 19      5  19    Ozone  30.0
## 20      5  20    Ozone  11.0
## 21      5  21    Ozone   1.0
## 22      5  22    Ozone  11.0
## 23      5  23    Ozone   4.0
## 24      5  24    Ozone  32.0
## 25      5  25    Ozone    NA
## 26      5  26    Ozone    NA
## 27      5  27    Ozone    NA
## 28      5  28    Ozone  23.0
## 29      5  29    Ozone  45.0
## 30      5  30    Ozone 115.0
## 31      5  31    Ozone  37.0
## 32      6   1    Ozone    NA
## 33      6   2    Ozone    NA
## 34      6   3    Ozone    NA
## 35      6   4    Ozone    NA
## 36      6   5    Ozone    NA
## 37      6   6    Ozone    NA
## 38      6   7    Ozone  29.0
## 39      6   8    Ozone    NA
## 40      6   9    Ozone  71.0
## 41      6  10    Ozone  39.0
## 42      6  11    Ozone    NA
## 43      6  12    Ozone    NA
## 44      6  13    Ozone  23.0
## 45      6  14    Ozone    NA
## 46      6  15    Ozone    NA
## 47      6  16    Ozone  21.0
## 48      6  17    Ozone  37.0
## 49      6  18    Ozone  20.0
## 50      6  19    Ozone  12.0
## 51      6  20    Ozone  13.0
## 52      6  21    Ozone    NA
## 53      6  22    Ozone    NA
## 54      6  23    Ozone    NA
## 55      6  24    Ozone    NA
## 56      6  25    Ozone    NA
## 57      6  26    Ozone    NA
## 58      6  27    Ozone    NA
## 59      6  28    Ozone    NA
## 60      6  29    Ozone    NA
## 61      6  30    Ozone    NA
## 62      7   1    Ozone 135.0
## 63      7   2    Ozone  49.0
## 64      7   3    Ozone  32.0
## 65      7   4    Ozone    NA
## 66      7   5    Ozone  64.0
## 67      7   6    Ozone  40.0
## 68      7   7    Ozone  77.0
## 69      7   8    Ozone  97.0
## 70      7   9    Ozone  97.0
## 71      7  10    Ozone  85.0
## 72      7  11    Ozone    NA
## 73      7  12    Ozone  10.0
## 74      7  13    Ozone  27.0
## 75      7  14    Ozone    NA
## 76      7  15    Ozone   7.0
## 77      7  16    Ozone  48.0
## 78      7  17    Ozone  35.0
## 79      7  18    Ozone  61.0
## 80      7  19    Ozone  79.0
## 81      7  20    Ozone  63.0
## 82      7  21    Ozone  16.0
## 83      7  22    Ozone    NA
## 84      7  23    Ozone    NA
## 85      7  24    Ozone  80.0
## 86      7  25    Ozone 108.0
## 87      7  26    Ozone  20.0
## 88      7  27    Ozone  52.0
## 89      7  28    Ozone  82.0
## 90      7  29    Ozone  50.0
## 91      7  30    Ozone  64.0
## 92      7  31    Ozone  59.0
## 93      8   1    Ozone  39.0
## 94      8   2    Ozone   9.0
## 95      8   3    Ozone  16.0
## 96      8   4    Ozone  78.0
## 97      8   5    Ozone  35.0
## 98      8   6    Ozone  66.0
## 99      8   7    Ozone 122.0
## 100     8   8    Ozone  89.0
## 101     8   9    Ozone 110.0
## 102     8  10    Ozone    NA
## 103     8  11    Ozone    NA
## 104     8  12    Ozone  44.0
## 105     8  13    Ozone  28.0
## 106     8  14    Ozone  65.0
## 107     8  15    Ozone    NA
## 108     8  16    Ozone  22.0
## 109     8  17    Ozone  59.0
## 110     8  18    Ozone  23.0
## 111     8  19    Ozone  31.0
## 112     8  20    Ozone  44.0
## 113     8  21    Ozone  21.0
## 114     8  22    Ozone   9.0
## 115     8  23    Ozone    NA
## 116     8  24    Ozone  45.0
## 117     8  25    Ozone 168.0
## 118     8  26    Ozone  73.0
## 119     8  27    Ozone    NA
## 120     8  28    Ozone  76.0
## 121     8  29    Ozone 118.0
## 122     8  30    Ozone  84.0
## 123     8  31    Ozone  85.0
## 124     9   1    Ozone  96.0
## 125     9   2    Ozone  78.0
## 126     9   3    Ozone  73.0
## 127     9   4    Ozone  91.0
## 128     9   5    Ozone  47.0
## 129     9   6    Ozone  32.0
## 130     9   7    Ozone  20.0
## 131     9   8    Ozone  23.0
## 132     9   9    Ozone  21.0
## 133     9  10    Ozone  24.0
## 134     9  11    Ozone  44.0
## 135     9  12    Ozone  21.0
## 136     9  13    Ozone  28.0
## 137     9  14    Ozone   9.0
## 138     9  15    Ozone  13.0
## 139     9  16    Ozone  46.0
## 140     9  17    Ozone  18.0
## 141     9  18    Ozone  13.0
## 142     9  19    Ozone  24.0
## 143     9  20    Ozone  16.0
## 144     9  21    Ozone  13.0
## 145     9  22    Ozone  23.0
## 146     9  23    Ozone  36.0
## 147     9  24    Ozone   7.0
## 148     9  25    Ozone  14.0
## 149     9  26    Ozone  30.0
## 150     9  27    Ozone    NA
## 151     9  28    Ozone  14.0
## 152     9  29    Ozone  18.0
## 153     9  30    Ozone  20.0
## 154     5   1  Solar.R 190.0
## 155     5   2  Solar.R 118.0
## 156     5   3  Solar.R 149.0
## 157     5   4  Solar.R 313.0
## 158     5   5  Solar.R    NA
## 159     5   6  Solar.R    NA
## 160     5   7  Solar.R 299.0
## 161     5   8  Solar.R  99.0
## 162     5   9  Solar.R  19.0
## 163     5  10  Solar.R 194.0
## 164     5  11  Solar.R    NA
## 165     5  12  Solar.R 256.0
## 166     5  13  Solar.R 290.0
## 167     5  14  Solar.R 274.0
## 168     5  15  Solar.R  65.0
## 169     5  16  Solar.R 334.0
## 170     5  17  Solar.R 307.0
## 171     5  18  Solar.R  78.0
## 172     5  19  Solar.R 322.0
## 173     5  20  Solar.R  44.0
## 174     5  21  Solar.R   8.0
## 175     5  22  Solar.R 320.0
## 176     5  23  Solar.R  25.0
## 177     5  24  Solar.R  92.0
## 178     5  25  Solar.R  66.0
## 179     5  26  Solar.R 266.0
## 180     5  27  Solar.R    NA
## 181     5  28  Solar.R  13.0
## 182     5  29  Solar.R 252.0
## 183     5  30  Solar.R 223.0
## 184     5  31  Solar.R 279.0
## 185     6   1  Solar.R 286.0
## 186     6   2  Solar.R 287.0
## 187     6   3  Solar.R 242.0
## 188     6   4  Solar.R 186.0
## 189     6   5  Solar.R 220.0
## 190     6   6  Solar.R 264.0
## 191     6   7  Solar.R 127.0
## 192     6   8  Solar.R 273.0
## 193     6   9  Solar.R 291.0
## 194     6  10  Solar.R 323.0
## 195     6  11  Solar.R 259.0
## 196     6  12  Solar.R 250.0
## 197     6  13  Solar.R 148.0
## 198     6  14  Solar.R 332.0
## 199     6  15  Solar.R 322.0
## 200     6  16  Solar.R 191.0
## 201     6  17  Solar.R 284.0
## 202     6  18  Solar.R  37.0
## 203     6  19  Solar.R 120.0
## 204     6  20  Solar.R 137.0
## 205     6  21  Solar.R 150.0
## 206     6  22  Solar.R  59.0
## 207     6  23  Solar.R  91.0
## 208     6  24  Solar.R 250.0
## 209     6  25  Solar.R 135.0
## 210     6  26  Solar.R 127.0
## 211     6  27  Solar.R  47.0
## 212     6  28  Solar.R  98.0
## 213     6  29  Solar.R  31.0
## 214     6  30  Solar.R 138.0
## 215     7   1  Solar.R 269.0
## 216     7   2  Solar.R 248.0
## 217     7   3  Solar.R 236.0
## 218     7   4  Solar.R 101.0
## 219     7   5  Solar.R 175.0
## 220     7   6  Solar.R 314.0
## 221     7   7  Solar.R 276.0
## 222     7   8  Solar.R 267.0
## 223     7   9  Solar.R 272.0
## 224     7  10  Solar.R 175.0
## 225     7  11  Solar.R 139.0
## 226     7  12  Solar.R 264.0
## 227     7  13  Solar.R 175.0
## 228     7  14  Solar.R 291.0
## 229     7  15  Solar.R  48.0
## 230     7  16  Solar.R 260.0
## 231     7  17  Solar.R 274.0
## 232     7  18  Solar.R 285.0
## 233     7  19  Solar.R 187.0
## 234     7  20  Solar.R 220.0
## 235     7  21  Solar.R   7.0
## 236     7  22  Solar.R 258.0
## 237     7  23  Solar.R 295.0
## 238     7  24  Solar.R 294.0
## 239     7  25  Solar.R 223.0
## 240     7  26  Solar.R  81.0
## 241     7  27  Solar.R  82.0
## 242     7  28  Solar.R 213.0
## 243     7  29  Solar.R 275.0
## 244     7  30  Solar.R 253.0
## 245     7  31  Solar.R 254.0
## 246     8   1  Solar.R  83.0
## 247     8   2  Solar.R  24.0
## 248     8   3  Solar.R  77.0
## 249     8   4  Solar.R    NA
## 250     8   5  Solar.R    NA
## 251     8   6  Solar.R    NA
## 252     8   7  Solar.R 255.0
## 253     8   8  Solar.R 229.0
## 254     8   9  Solar.R 207.0
## 255     8  10  Solar.R 222.0
## 256     8  11  Solar.R 137.0
## 257     8  12  Solar.R 192.0
## 258     8  13  Solar.R 273.0
## 259     8  14  Solar.R 157.0
## 260     8  15  Solar.R  64.0
## 261     8  16  Solar.R  71.0
## 262     8  17  Solar.R  51.0
## 263     8  18  Solar.R 115.0
## 264     8  19  Solar.R 244.0
## 265     8  20  Solar.R 190.0
## 266     8  21  Solar.R 259.0
## 267     8  22  Solar.R  36.0
## 268     8  23  Solar.R 255.0
## 269     8  24  Solar.R 212.0
## 270     8  25  Solar.R 238.0
## 271     8  26  Solar.R 215.0
## 272     8  27  Solar.R 153.0
## 273     8  28  Solar.R 203.0
## 274     8  29  Solar.R 225.0
## 275     8  30  Solar.R 237.0
## 276     8  31  Solar.R 188.0
## 277     9   1  Solar.R 167.0
## 278     9   2  Solar.R 197.0
## 279     9   3  Solar.R 183.0
## 280     9   4  Solar.R 189.0
## 281     9   5  Solar.R  95.0
## 282     9   6  Solar.R  92.0
## 283     9   7  Solar.R 252.0
## 284     9   8  Solar.R 220.0
## 285     9   9  Solar.R 230.0
## 286     9  10  Solar.R 259.0
## 287     9  11  Solar.R 236.0
## 288     9  12  Solar.R 259.0
## 289     9  13  Solar.R 238.0
## 290     9  14  Solar.R  24.0
## 291     9  15  Solar.R 112.0
## 292     9  16  Solar.R 237.0
## 293     9  17  Solar.R 224.0
## 294     9  18  Solar.R  27.0
## 295     9  19  Solar.R 238.0
## 296     9  20  Solar.R 201.0
## 297     9  21  Solar.R 238.0
## 298     9  22  Solar.R  14.0
## 299     9  23  Solar.R 139.0
## 300     9  24  Solar.R  49.0
## 301     9  25  Solar.R  20.0
## 302     9  26  Solar.R 193.0
## 303     9  27  Solar.R 145.0
## 304     9  28  Solar.R 191.0
## 305     9  29  Solar.R 131.0
## 306     9  30  Solar.R 223.0
## 307     5   1     Wind   7.4
## 308     5   2     Wind   8.0
## 309     5   3     Wind  12.6
## 310     5   4     Wind  11.5
## 311     5   5     Wind  14.3
## 312     5   6     Wind  14.9
## 313     5   7     Wind   8.6
## 314     5   8     Wind  13.8
## 315     5   9     Wind  20.1
## 316     5  10     Wind   8.6
## 317     5  11     Wind   6.9
## 318     5  12     Wind   9.7
## 319     5  13     Wind   9.2
## 320     5  14     Wind  10.9
## 321     5  15     Wind  13.2
## 322     5  16     Wind  11.5
## 323     5  17     Wind  12.0
## 324     5  18     Wind  18.4
## 325     5  19     Wind  11.5
## 326     5  20     Wind   9.7
## 327     5  21     Wind   9.7
## 328     5  22     Wind  16.6
## 329     5  23     Wind   9.7
## 330     5  24     Wind  12.0
## 331     5  25     Wind  16.6
## 332     5  26     Wind  14.9
## 333     5  27     Wind   8.0
## 334     5  28     Wind  12.0
## 335     5  29     Wind  14.9
## 336     5  30     Wind   5.7
## 337     5  31     Wind   7.4
## 338     6   1     Wind   8.6
## 339     6   2     Wind   9.7
## 340     6   3     Wind  16.1
## 341     6   4     Wind   9.2
## 342     6   5     Wind   8.6
## 343     6   6     Wind  14.3
## 344     6   7     Wind   9.7
## 345     6   8     Wind   6.9
## 346     6   9     Wind  13.8
## 347     6  10     Wind  11.5
## 348     6  11     Wind  10.9
## 349     6  12     Wind   9.2
## 350     6  13     Wind   8.0
## 351     6  14     Wind  13.8
## 352     6  15     Wind  11.5
## 353     6  16     Wind  14.9
## 354     6  17     Wind  20.7
## 355     6  18     Wind   9.2
## 356     6  19     Wind  11.5
## 357     6  20     Wind  10.3
## 358     6  21     Wind   6.3
## 359     6  22     Wind   1.7
## 360     6  23     Wind   4.6
## 361     6  24     Wind   6.3
## 362     6  25     Wind   8.0
## 363     6  26     Wind   8.0
## 364     6  27     Wind  10.3
## 365     6  28     Wind  11.5
## 366     6  29     Wind  14.9
## 367     6  30     Wind   8.0
## 368     7   1     Wind   4.1
## 369     7   2     Wind   9.2
## 370     7   3     Wind   9.2
## 371     7   4     Wind  10.9
## 372     7   5     Wind   4.6
## 373     7   6     Wind  10.9
## 374     7   7     Wind   5.1
## 375     7   8     Wind   6.3
## 376     7   9     Wind   5.7
## 377     7  10     Wind   7.4
## 378     7  11     Wind   8.6
## 379     7  12     Wind  14.3
## 380     7  13     Wind  14.9
## 381     7  14     Wind  14.9
## 382     7  15     Wind  14.3
## 383     7  16     Wind   6.9
## 384     7  17     Wind  10.3
## 385     7  18     Wind   6.3
## 386     7  19     Wind   5.1
## 387     7  20     Wind  11.5
## 388     7  21     Wind   6.9
## 389     7  22     Wind   9.7
## 390     7  23     Wind  11.5
## 391     7  24     Wind   8.6
## 392     7  25     Wind   8.0
## 393     7  26     Wind   8.6
## 394     7  27     Wind  12.0
## 395     7  28     Wind   7.4
## 396     7  29     Wind   7.4
## 397     7  30     Wind   7.4
## 398     7  31     Wind   9.2
## 399     8   1     Wind   6.9
## 400     8   2     Wind  13.8
## 401     8   3     Wind   7.4
## 402     8   4     Wind   6.9
## 403     8   5     Wind   7.4
## 404     8   6     Wind   4.6
## 405     8   7     Wind   4.0
## 406     8   8     Wind  10.3
## 407     8   9     Wind   8.0
## 408     8  10     Wind   8.6
## 409     8  11     Wind  11.5
## 410     8  12     Wind  11.5
## 411     8  13     Wind  11.5
## 412     8  14     Wind   9.7
## 413     8  15     Wind  11.5
## 414     8  16     Wind  10.3
## 415     8  17     Wind   6.3
## 416     8  18     Wind   7.4
## 417     8  19     Wind  10.9
## 418     8  20     Wind  10.3
## 419     8  21     Wind  15.5
## 420     8  22     Wind  14.3
## 421     8  23     Wind  12.6
## 422     8  24     Wind   9.7
## 423     8  25     Wind   3.4
## 424     8  26     Wind   8.0
## 425     8  27     Wind   5.7
## 426     8  28     Wind   9.7
## 427     8  29     Wind   2.3
## 428     8  30     Wind   6.3
## 429     8  31     Wind   6.3
## 430     9   1     Wind   6.9
## 431     9   2     Wind   5.1
## 432     9   3     Wind   2.8
## 433     9   4     Wind   4.6
## 434     9   5     Wind   7.4
## 435     9   6     Wind  15.5
## 436     9   7     Wind  10.9
## 437     9   8     Wind  10.3
## 438     9   9     Wind  10.9
## 439     9  10     Wind   9.7
## 440     9  11     Wind  14.9
## 441     9  12     Wind  15.5
## 442     9  13     Wind   6.3
## 443     9  14     Wind  10.9
## 444     9  15     Wind  11.5
## 445     9  16     Wind   6.9
## 446     9  17     Wind  13.8
## 447     9  18     Wind  10.3
## 448     9  19     Wind  10.3
## 449     9  20     Wind   8.0
## 450     9  21     Wind  12.6
## 451     9  22     Wind   9.2
## 452     9  23     Wind  10.3
## 453     9  24     Wind  10.3
## 454     9  25     Wind  16.6
## 455     9  26     Wind   6.9
## 456     9  27     Wind  13.2
## 457     9  28     Wind  14.3
## 458     9  29     Wind   8.0
## 459     9  30     Wind  11.5
## 460     5   1     Temp  67.0
## 461     5   2     Temp  72.0
## 462     5   3     Temp  74.0
## 463     5   4     Temp  62.0
## 464     5   5     Temp  56.0
## 465     5   6     Temp  66.0
## 466     5   7     Temp  65.0
## 467     5   8     Temp  59.0
## 468     5   9     Temp  61.0
## 469     5  10     Temp  69.0
## 470     5  11     Temp  74.0
## 471     5  12     Temp  69.0
## 472     5  13     Temp  66.0
## 473     5  14     Temp  68.0
## 474     5  15     Temp  58.0
## 475     5  16     Temp  64.0
## 476     5  17     Temp  66.0
## 477     5  18     Temp  57.0
## 478     5  19     Temp  68.0
## 479     5  20     Temp  62.0
## 480     5  21     Temp  59.0
## 481     5  22     Temp  73.0
## 482     5  23     Temp  61.0
## 483     5  24     Temp  61.0
## 484     5  25     Temp  57.0
## 485     5  26     Temp  58.0
## 486     5  27     Temp  57.0
## 487     5  28     Temp  67.0
## 488     5  29     Temp  81.0
## 489     5  30     Temp  79.0
## 490     5  31     Temp  76.0
## 491     6   1     Temp  78.0
## 492     6   2     Temp  74.0
## 493     6   3     Temp  67.0
## 494     6   4     Temp  84.0
## 495     6   5     Temp  85.0
## 496     6   6     Temp  79.0
## 497     6   7     Temp  82.0
## 498     6   8     Temp  87.0
## 499     6   9     Temp  90.0
## 500     6  10     Temp  87.0
## 501     6  11     Temp  93.0
## 502     6  12     Temp  92.0
## 503     6  13     Temp  82.0
## 504     6  14     Temp  80.0
## 505     6  15     Temp  79.0
## 506     6  16     Temp  77.0
## 507     6  17     Temp  72.0
## 508     6  18     Temp  65.0
## 509     6  19     Temp  73.0
## 510     6  20     Temp  76.0
## 511     6  21     Temp  77.0
## 512     6  22     Temp  76.0
## 513     6  23     Temp  76.0
## 514     6  24     Temp  76.0
## 515     6  25     Temp  75.0
## 516     6  26     Temp  78.0
## 517     6  27     Temp  73.0
## 518     6  28     Temp  80.0
## 519     6  29     Temp  77.0
## 520     6  30     Temp  83.0
## 521     7   1     Temp  84.0
## 522     7   2     Temp  85.0
## 523     7   3     Temp  81.0
## 524     7   4     Temp  84.0
## 525     7   5     Temp  83.0
## 526     7   6     Temp  83.0
## 527     7   7     Temp  88.0
## 528     7   8     Temp  92.0
## 529     7   9     Temp  92.0
## 530     7  10     Temp  89.0
## 531     7  11     Temp  82.0
## 532     7  12     Temp  73.0
## 533     7  13     Temp  81.0
## 534     7  14     Temp  91.0
## 535     7  15     Temp  80.0
## 536     7  16     Temp  81.0
## 537     7  17     Temp  82.0
## 538     7  18     Temp  84.0
## 539     7  19     Temp  87.0
## 540     7  20     Temp  85.0
## 541     7  21     Temp  74.0
## 542     7  22     Temp  81.0
## 543     7  23     Temp  82.0
## 544     7  24     Temp  86.0
## 545     7  25     Temp  85.0
## 546     7  26     Temp  82.0
## 547     7  27     Temp  86.0
## 548     7  28     Temp  88.0
## 549     7  29     Temp  86.0
## 550     7  30     Temp  83.0
## 551     7  31     Temp  81.0
## 552     8   1     Temp  81.0
## 553     8   2     Temp  81.0
## 554     8   3     Temp  82.0
## 555     8   4     Temp  86.0
## 556     8   5     Temp  85.0
## 557     8   6     Temp  87.0
## 558     8   7     Temp  89.0
## 559     8   8     Temp  90.0
## 560     8   9     Temp  90.0
## 561     8  10     Temp  92.0
## 562     8  11     Temp  86.0
## 563     8  12     Temp  86.0
## 564     8  13     Temp  82.0
## 565     8  14     Temp  80.0
## 566     8  15     Temp  79.0
## 567     8  16     Temp  77.0
## 568     8  17     Temp  79.0
## 569     8  18     Temp  76.0
## 570     8  19     Temp  78.0
## 571     8  20     Temp  78.0
## 572     8  21     Temp  77.0
## 573     8  22     Temp  72.0
## 574     8  23     Temp  75.0
## 575     8  24     Temp  79.0
## 576     8  25     Temp  81.0
## 577     8  26     Temp  86.0
## 578     8  27     Temp  88.0
## 579     8  28     Temp  97.0
## 580     8  29     Temp  94.0
## 581     8  30     Temp  96.0
## 582     8  31     Temp  94.0
## 583     9   1     Temp  91.0
## 584     9   2     Temp  92.0
## 585     9   3     Temp  93.0
## 586     9   4     Temp  93.0
## 587     9   5     Temp  87.0
## 588     9   6     Temp  84.0
## 589     9   7     Temp  80.0
## 590     9   8     Temp  78.0
## 591     9   9     Temp  75.0
## 592     9  10     Temp  73.0
## 593     9  11     Temp  81.0
## 594     9  12     Temp  76.0
## 595     9  13     Temp  77.0
## 596     9  14     Temp  71.0
## 597     9  15     Temp  71.0
## 598     9  16     Temp  78.0
## 599     9  17     Temp  67.0
## 600     9  18     Temp  76.0
## 601     9  19     Temp  68.0
## 602     9  20     Temp  82.0
## 603     9  21     Temp  64.0
## 604     9  22     Temp  71.0
## 605     9  23     Temp  81.0
## 606     9  24     Temp  69.0
## 607     9  25     Temp  63.0
## 608     9  26     Temp  70.0
## 609     9  27     Temp  77.0
## 610     9  28     Temp  75.0
## 611     9  29     Temp  76.0
## 612     9  30     Temp  68.0
df<-melt(airquality, id.vars = c("Month", "Day"))
names(df) # df의 변수 이름 출력
## [1] "Month"    "Day"      "variable" "value"
# dplyr::rename()
# 변수이름 변경 
# "variable"->"enviro"
# "value"->"measure"

dplyr::rename(df, enviro = variable, measure = value)
##     Month Day  enviro measure
## 1       5   1   Ozone    41.0
## 2       5   2   Ozone    36.0
## 3       5   3   Ozone    12.0
## 4       5   4   Ozone    18.0
## 5       5   5   Ozone      NA
## 6       5   6   Ozone    28.0
## 7       5   7   Ozone    23.0
## 8       5   8   Ozone    19.0
## 9       5   9   Ozone     8.0
## 10      5  10   Ozone      NA
## 11      5  11   Ozone     7.0
## 12      5  12   Ozone    16.0
## 13      5  13   Ozone    11.0
## 14      5  14   Ozone    14.0
## 15      5  15   Ozone    18.0
## 16      5  16   Ozone    14.0
## 17      5  17   Ozone    34.0
## 18      5  18   Ozone     6.0
## 19      5  19   Ozone    30.0
## 20      5  20   Ozone    11.0
## 21      5  21   Ozone     1.0
## 22      5  22   Ozone    11.0
## 23      5  23   Ozone     4.0
## 24      5  24   Ozone    32.0
## 25      5  25   Ozone      NA
## 26      5  26   Ozone      NA
## 27      5  27   Ozone      NA
## 28      5  28   Ozone    23.0
## 29      5  29   Ozone    45.0
## 30      5  30   Ozone   115.0
## 31      5  31   Ozone    37.0
## 32      6   1   Ozone      NA
## 33      6   2   Ozone      NA
## 34      6   3   Ozone      NA
## 35      6   4   Ozone      NA
## 36      6   5   Ozone      NA
## 37      6   6   Ozone      NA
## 38      6   7   Ozone    29.0
## 39      6   8   Ozone      NA
## 40      6   9   Ozone    71.0
## 41      6  10   Ozone    39.0
## 42      6  11   Ozone      NA
## 43      6  12   Ozone      NA
## 44      6  13   Ozone    23.0
## 45      6  14   Ozone      NA
## 46      6  15   Ozone      NA
## 47      6  16   Ozone    21.0
## 48      6  17   Ozone    37.0
## 49      6  18   Ozone    20.0
## 50      6  19   Ozone    12.0
## 51      6  20   Ozone    13.0
## 52      6  21   Ozone      NA
## 53      6  22   Ozone      NA
## 54      6  23   Ozone      NA
## 55      6  24   Ozone      NA
## 56      6  25   Ozone      NA
## 57      6  26   Ozone      NA
## 58      6  27   Ozone      NA
## 59      6  28   Ozone      NA
## 60      6  29   Ozone      NA
## 61      6  30   Ozone      NA
## 62      7   1   Ozone   135.0
## 63      7   2   Ozone    49.0
## 64      7   3   Ozone    32.0
## 65      7   4   Ozone      NA
## 66      7   5   Ozone    64.0
## 67      7   6   Ozone    40.0
## 68      7   7   Ozone    77.0
## 69      7   8   Ozone    97.0
## 70      7   9   Ozone    97.0
## 71      7  10   Ozone    85.0
## 72      7  11   Ozone      NA
## 73      7  12   Ozone    10.0
## 74      7  13   Ozone    27.0
## 75      7  14   Ozone      NA
## 76      7  15   Ozone     7.0
## 77      7  16   Ozone    48.0
## 78      7  17   Ozone    35.0
## 79      7  18   Ozone    61.0
## 80      7  19   Ozone    79.0
## 81      7  20   Ozone    63.0
## 82      7  21   Ozone    16.0
## 83      7  22   Ozone      NA
## 84      7  23   Ozone      NA
## 85      7  24   Ozone    80.0
## 86      7  25   Ozone   108.0
## 87      7  26   Ozone    20.0
## 88      7  27   Ozone    52.0
## 89      7  28   Ozone    82.0
## 90      7  29   Ozone    50.0
## 91      7  30   Ozone    64.0
## 92      7  31   Ozone    59.0
## 93      8   1   Ozone    39.0
## 94      8   2   Ozone     9.0
## 95      8   3   Ozone    16.0
## 96      8   4   Ozone    78.0
## 97      8   5   Ozone    35.0
## 98      8   6   Ozone    66.0
## 99      8   7   Ozone   122.0
## 100     8   8   Ozone    89.0
## 101     8   9   Ozone   110.0
## 102     8  10   Ozone      NA
## 103     8  11   Ozone      NA
## 104     8  12   Ozone    44.0
## 105     8  13   Ozone    28.0
## 106     8  14   Ozone    65.0
## 107     8  15   Ozone      NA
## 108     8  16   Ozone    22.0
## 109     8  17   Ozone    59.0
## 110     8  18   Ozone    23.0
## 111     8  19   Ozone    31.0
## 112     8  20   Ozone    44.0
## 113     8  21   Ozone    21.0
## 114     8  22   Ozone     9.0
## 115     8  23   Ozone      NA
## 116     8  24   Ozone    45.0
## 117     8  25   Ozone   168.0
## 118     8  26   Ozone    73.0
## 119     8  27   Ozone      NA
## 120     8  28   Ozone    76.0
## 121     8  29   Ozone   118.0
## 122     8  30   Ozone    84.0
## 123     8  31   Ozone    85.0
## 124     9   1   Ozone    96.0
## 125     9   2   Ozone    78.0
## 126     9   3   Ozone    73.0
## 127     9   4   Ozone    91.0
## 128     9   5   Ozone    47.0
## 129     9   6   Ozone    32.0
## 130     9   7   Ozone    20.0
## 131     9   8   Ozone    23.0
## 132     9   9   Ozone    21.0
## 133     9  10   Ozone    24.0
## 134     9  11   Ozone    44.0
## 135     9  12   Ozone    21.0
## 136     9  13   Ozone    28.0
## 137     9  14   Ozone     9.0
## 138     9  15   Ozone    13.0
## 139     9  16   Ozone    46.0
## 140     9  17   Ozone    18.0
## 141     9  18   Ozone    13.0
## 142     9  19   Ozone    24.0
## 143     9  20   Ozone    16.0
## 144     9  21   Ozone    13.0
## 145     9  22   Ozone    23.0
## 146     9  23   Ozone    36.0
## 147     9  24   Ozone     7.0
## 148     9  25   Ozone    14.0
## 149     9  26   Ozone    30.0
## 150     9  27   Ozone      NA
## 151     9  28   Ozone    14.0
## 152     9  29   Ozone    18.0
## 153     9  30   Ozone    20.0
## 154     5   1 Solar.R   190.0
## 155     5   2 Solar.R   118.0
## 156     5   3 Solar.R   149.0
## 157     5   4 Solar.R   313.0
## 158     5   5 Solar.R      NA
## 159     5   6 Solar.R      NA
## 160     5   7 Solar.R   299.0
## 161     5   8 Solar.R    99.0
## 162     5   9 Solar.R    19.0
## 163     5  10 Solar.R   194.0
## 164     5  11 Solar.R      NA
## 165     5  12 Solar.R   256.0
## 166     5  13 Solar.R   290.0
## 167     5  14 Solar.R   274.0
## 168     5  15 Solar.R    65.0
## 169     5  16 Solar.R   334.0
## 170     5  17 Solar.R   307.0
## 171     5  18 Solar.R    78.0
## 172     5  19 Solar.R   322.0
## 173     5  20 Solar.R    44.0
## 174     5  21 Solar.R     8.0
## 175     5  22 Solar.R   320.0
## 176     5  23 Solar.R    25.0
## 177     5  24 Solar.R    92.0
## 178     5  25 Solar.R    66.0
## 179     5  26 Solar.R   266.0
## 180     5  27 Solar.R      NA
## 181     5  28 Solar.R    13.0
## 182     5  29 Solar.R   252.0
## 183     5  30 Solar.R   223.0
## 184     5  31 Solar.R   279.0
## 185     6   1 Solar.R   286.0
## 186     6   2 Solar.R   287.0
## 187     6   3 Solar.R   242.0
## 188     6   4 Solar.R   186.0
## 189     6   5 Solar.R   220.0
## 190     6   6 Solar.R   264.0
## 191     6   7 Solar.R   127.0
## 192     6   8 Solar.R   273.0
## 193     6   9 Solar.R   291.0
## 194     6  10 Solar.R   323.0
## 195     6  11 Solar.R   259.0
## 196     6  12 Solar.R   250.0
## 197     6  13 Solar.R   148.0
## 198     6  14 Solar.R   332.0
## 199     6  15 Solar.R   322.0
## 200     6  16 Solar.R   191.0
## 201     6  17 Solar.R   284.0
## 202     6  18 Solar.R    37.0
## 203     6  19 Solar.R   120.0
## 204     6  20 Solar.R   137.0
## 205     6  21 Solar.R   150.0
## 206     6  22 Solar.R    59.0
## 207     6  23 Solar.R    91.0
## 208     6  24 Solar.R   250.0
## 209     6  25 Solar.R   135.0
## 210     6  26 Solar.R   127.0
## 211     6  27 Solar.R    47.0
## 212     6  28 Solar.R    98.0
## 213     6  29 Solar.R    31.0
## 214     6  30 Solar.R   138.0
## 215     7   1 Solar.R   269.0
## 216     7   2 Solar.R   248.0
## 217     7   3 Solar.R   236.0
## 218     7   4 Solar.R   101.0
## 219     7   5 Solar.R   175.0
## 220     7   6 Solar.R   314.0
## 221     7   7 Solar.R   276.0
## 222     7   8 Solar.R   267.0
## 223     7   9 Solar.R   272.0
## 224     7  10 Solar.R   175.0
## 225     7  11 Solar.R   139.0
## 226     7  12 Solar.R   264.0
## 227     7  13 Solar.R   175.0
## 228     7  14 Solar.R   291.0
## 229     7  15 Solar.R    48.0
## 230     7  16 Solar.R   260.0
## 231     7  17 Solar.R   274.0
## 232     7  18 Solar.R   285.0
## 233     7  19 Solar.R   187.0
## 234     7  20 Solar.R   220.0
## 235     7  21 Solar.R     7.0
## 236     7  22 Solar.R   258.0
## 237     7  23 Solar.R   295.0
## 238     7  24 Solar.R   294.0
## 239     7  25 Solar.R   223.0
## 240     7  26 Solar.R    81.0
## 241     7  27 Solar.R    82.0
## 242     7  28 Solar.R   213.0
## 243     7  29 Solar.R   275.0
## 244     7  30 Solar.R   253.0
## 245     7  31 Solar.R   254.0
## 246     8   1 Solar.R    83.0
## 247     8   2 Solar.R    24.0
## 248     8   3 Solar.R    77.0
## 249     8   4 Solar.R      NA
## 250     8   5 Solar.R      NA
## 251     8   6 Solar.R      NA
## 252     8   7 Solar.R   255.0
## 253     8   8 Solar.R   229.0
## 254     8   9 Solar.R   207.0
## 255     8  10 Solar.R   222.0
## 256     8  11 Solar.R   137.0
## 257     8  12 Solar.R   192.0
## 258     8  13 Solar.R   273.0
## 259     8  14 Solar.R   157.0
## 260     8  15 Solar.R    64.0
## 261     8  16 Solar.R    71.0
## 262     8  17 Solar.R    51.0
## 263     8  18 Solar.R   115.0
## 264     8  19 Solar.R   244.0
## 265     8  20 Solar.R   190.0
## 266     8  21 Solar.R   259.0
## 267     8  22 Solar.R    36.0
## 268     8  23 Solar.R   255.0
## 269     8  24 Solar.R   212.0
## 270     8  25 Solar.R   238.0
## 271     8  26 Solar.R   215.0
## 272     8  27 Solar.R   153.0
## 273     8  28 Solar.R   203.0
## 274     8  29 Solar.R   225.0
## 275     8  30 Solar.R   237.0
## 276     8  31 Solar.R   188.0
## 277     9   1 Solar.R   167.0
## 278     9   2 Solar.R   197.0
## 279     9   3 Solar.R   183.0
## 280     9   4 Solar.R   189.0
## 281     9   5 Solar.R    95.0
## 282     9   6 Solar.R    92.0
## 283     9   7 Solar.R   252.0
## 284     9   8 Solar.R   220.0
## 285     9   9 Solar.R   230.0
## 286     9  10 Solar.R   259.0
## 287     9  11 Solar.R   236.0
## 288     9  12 Solar.R   259.0
## 289     9  13 Solar.R   238.0
## 290     9  14 Solar.R    24.0
## 291     9  15 Solar.R   112.0
## 292     9  16 Solar.R   237.0
## 293     9  17 Solar.R   224.0
## 294     9  18 Solar.R    27.0
## 295     9  19 Solar.R   238.0
## 296     9  20 Solar.R   201.0
## 297     9  21 Solar.R   238.0
## 298     9  22 Solar.R    14.0
## 299     9  23 Solar.R   139.0
## 300     9  24 Solar.R    49.0
## 301     9  25 Solar.R    20.0
## 302     9  26 Solar.R   193.0
## 303     9  27 Solar.R   145.0
## 304     9  28 Solar.R   191.0
## 305     9  29 Solar.R   131.0
## 306     9  30 Solar.R   223.0
## 307     5   1    Wind     7.4
## 308     5   2    Wind     8.0
## 309     5   3    Wind    12.6
## 310     5   4    Wind    11.5
## 311     5   5    Wind    14.3
## 312     5   6    Wind    14.9
## 313     5   7    Wind     8.6
## 314     5   8    Wind    13.8
## 315     5   9    Wind    20.1
## 316     5  10    Wind     8.6
## 317     5  11    Wind     6.9
## 318     5  12    Wind     9.7
## 319     5  13    Wind     9.2
## 320     5  14    Wind    10.9
## 321     5  15    Wind    13.2
## 322     5  16    Wind    11.5
## 323     5  17    Wind    12.0
## 324     5  18    Wind    18.4
## 325     5  19    Wind    11.5
## 326     5  20    Wind     9.7
## 327     5  21    Wind     9.7
## 328     5  22    Wind    16.6
## 329     5  23    Wind     9.7
## 330     5  24    Wind    12.0
## 331     5  25    Wind    16.6
## 332     5  26    Wind    14.9
## 333     5  27    Wind     8.0
## 334     5  28    Wind    12.0
## 335     5  29    Wind    14.9
## 336     5  30    Wind     5.7
## 337     5  31    Wind     7.4
## 338     6   1    Wind     8.6
## 339     6   2    Wind     9.7
## 340     6   3    Wind    16.1
## 341     6   4    Wind     9.2
## 342     6   5    Wind     8.6
## 343     6   6    Wind    14.3
## 344     6   7    Wind     9.7
## 345     6   8    Wind     6.9
## 346     6   9    Wind    13.8
## 347     6  10    Wind    11.5
## 348     6  11    Wind    10.9
## 349     6  12    Wind     9.2
## 350     6  13    Wind     8.0
## 351     6  14    Wind    13.8
## 352     6  15    Wind    11.5
## 353     6  16    Wind    14.9
## 354     6  17    Wind    20.7
## 355     6  18    Wind     9.2
## 356     6  19    Wind    11.5
## 357     6  20    Wind    10.3
## 358     6  21    Wind     6.3
## 359     6  22    Wind     1.7
## 360     6  23    Wind     4.6
## 361     6  24    Wind     6.3
## 362     6  25    Wind     8.0
## 363     6  26    Wind     8.0
## 364     6  27    Wind    10.3
## 365     6  28    Wind    11.5
## 366     6  29    Wind    14.9
## 367     6  30    Wind     8.0
## 368     7   1    Wind     4.1
## 369     7   2    Wind     9.2
## 370     7   3    Wind     9.2
## 371     7   4    Wind    10.9
## 372     7   5    Wind     4.6
## 373     7   6    Wind    10.9
## 374     7   7    Wind     5.1
## 375     7   8    Wind     6.3
## 376     7   9    Wind     5.7
## 377     7  10    Wind     7.4
## 378     7  11    Wind     8.6
## 379     7  12    Wind    14.3
## 380     7  13    Wind    14.9
## 381     7  14    Wind    14.9
## 382     7  15    Wind    14.3
## 383     7  16    Wind     6.9
## 384     7  17    Wind    10.3
## 385     7  18    Wind     6.3
## 386     7  19    Wind     5.1
## 387     7  20    Wind    11.5
## 388     7  21    Wind     6.9
## 389     7  22    Wind     9.7
## 390     7  23    Wind    11.5
## 391     7  24    Wind     8.6
## 392     7  25    Wind     8.0
## 393     7  26    Wind     8.6
## 394     7  27    Wind    12.0
## 395     7  28    Wind     7.4
## 396     7  29    Wind     7.4
## 397     7  30    Wind     7.4
## 398     7  31    Wind     9.2
## 399     8   1    Wind     6.9
## 400     8   2    Wind    13.8
## 401     8   3    Wind     7.4
## 402     8   4    Wind     6.9
## 403     8   5    Wind     7.4
## 404     8   6    Wind     4.6
## 405     8   7    Wind     4.0
## 406     8   8    Wind    10.3
## 407     8   9    Wind     8.0
## 408     8  10    Wind     8.6
## 409     8  11    Wind    11.5
## 410     8  12    Wind    11.5
## 411     8  13    Wind    11.5
## 412     8  14    Wind     9.7
## 413     8  15    Wind    11.5
## 414     8  16    Wind    10.3
## 415     8  17    Wind     6.3
## 416     8  18    Wind     7.4
## 417     8  19    Wind    10.9
## 418     8  20    Wind    10.3
## 419     8  21    Wind    15.5
## 420     8  22    Wind    14.3
## 421     8  23    Wind    12.6
## 422     8  24    Wind     9.7
## 423     8  25    Wind     3.4
## 424     8  26    Wind     8.0
## 425     8  27    Wind     5.7
## 426     8  28    Wind     9.7
## 427     8  29    Wind     2.3
## 428     8  30    Wind     6.3
## 429     8  31    Wind     6.3
## 430     9   1    Wind     6.9
## 431     9   2    Wind     5.1
## 432     9   3    Wind     2.8
## 433     9   4    Wind     4.6
## 434     9   5    Wind     7.4
## 435     9   6    Wind    15.5
## 436     9   7    Wind    10.9
## 437     9   8    Wind    10.3
## 438     9   9    Wind    10.9
## 439     9  10    Wind     9.7
## 440     9  11    Wind    14.9
## 441     9  12    Wind    15.5
## 442     9  13    Wind     6.3
## 443     9  14    Wind    10.9
## 444     9  15    Wind    11.5
## 445     9  16    Wind     6.9
## 446     9  17    Wind    13.8
## 447     9  18    Wind    10.3
## 448     9  19    Wind    10.3
## 449     9  20    Wind     8.0
## 450     9  21    Wind    12.6
## 451     9  22    Wind     9.2
## 452     9  23    Wind    10.3
## 453     9  24    Wind    10.3
## 454     9  25    Wind    16.6
## 455     9  26    Wind     6.9
## 456     9  27    Wind    13.2
## 457     9  28    Wind    14.3
## 458     9  29    Wind     8.0
## 459     9  30    Wind    11.5
## 460     5   1    Temp    67.0
## 461     5   2    Temp    72.0
## 462     5   3    Temp    74.0
## 463     5   4    Temp    62.0
## 464     5   5    Temp    56.0
## 465     5   6    Temp    66.0
## 466     5   7    Temp    65.0
## 467     5   8    Temp    59.0
## 468     5   9    Temp    61.0
## 469     5  10    Temp    69.0
## 470     5  11    Temp    74.0
## 471     5  12    Temp    69.0
## 472     5  13    Temp    66.0
## 473     5  14    Temp    68.0
## 474     5  15    Temp    58.0
## 475     5  16    Temp    64.0
## 476     5  17    Temp    66.0
## 477     5  18    Temp    57.0
## 478     5  19    Temp    68.0
## 479     5  20    Temp    62.0
## 480     5  21    Temp    59.0
## 481     5  22    Temp    73.0
## 482     5  23    Temp    61.0
## 483     5  24    Temp    61.0
## 484     5  25    Temp    57.0
## 485     5  26    Temp    58.0
## 486     5  27    Temp    57.0
## 487     5  28    Temp    67.0
## 488     5  29    Temp    81.0
## 489     5  30    Temp    79.0
## 490     5  31    Temp    76.0
## 491     6   1    Temp    78.0
## 492     6   2    Temp    74.0
## 493     6   3    Temp    67.0
## 494     6   4    Temp    84.0
## 495     6   5    Temp    85.0
## 496     6   6    Temp    79.0
## 497     6   7    Temp    82.0
## 498     6   8    Temp    87.0
## 499     6   9    Temp    90.0
## 500     6  10    Temp    87.0
## 501     6  11    Temp    93.0
## 502     6  12    Temp    92.0
## 503     6  13    Temp    82.0
## 504     6  14    Temp    80.0
## 505     6  15    Temp    79.0
## 506     6  16    Temp    77.0
## 507     6  17    Temp    72.0
## 508     6  18    Temp    65.0
## 509     6  19    Temp    73.0
## 510     6  20    Temp    76.0
## 511     6  21    Temp    77.0
## 512     6  22    Temp    76.0
## 513     6  23    Temp    76.0
## 514     6  24    Temp    76.0
## 515     6  25    Temp    75.0
## 516     6  26    Temp    78.0
## 517     6  27    Temp    73.0
## 518     6  28    Temp    80.0
## 519     6  29    Temp    77.0
## 520     6  30    Temp    83.0
## 521     7   1    Temp    84.0
## 522     7   2    Temp    85.0
## 523     7   3    Temp    81.0
## 524     7   4    Temp    84.0
## 525     7   5    Temp    83.0
## 526     7   6    Temp    83.0
## 527     7   7    Temp    88.0
## 528     7   8    Temp    92.0
## 529     7   9    Temp    92.0
## 530     7  10    Temp    89.0
## 531     7  11    Temp    82.0
## 532     7  12    Temp    73.0
## 533     7  13    Temp    81.0
## 534     7  14    Temp    91.0
## 535     7  15    Temp    80.0
## 536     7  16    Temp    81.0
## 537     7  17    Temp    82.0
## 538     7  18    Temp    84.0
## 539     7  19    Temp    87.0
## 540     7  20    Temp    85.0
## 541     7  21    Temp    74.0
## 542     7  22    Temp    81.0
## 543     7  23    Temp    82.0
## 544     7  24    Temp    86.0
## 545     7  25    Temp    85.0
## 546     7  26    Temp    82.0
## 547     7  27    Temp    86.0
## 548     7  28    Temp    88.0
## 549     7  29    Temp    86.0
## 550     7  30    Temp    83.0
## 551     7  31    Temp    81.0
## 552     8   1    Temp    81.0
## 553     8   2    Temp    81.0
## 554     8   3    Temp    82.0
## 555     8   4    Temp    86.0
## 556     8   5    Temp    85.0
## 557     8   6    Temp    87.0
## 558     8   7    Temp    89.0
## 559     8   8    Temp    90.0
## 560     8   9    Temp    90.0
## 561     8  10    Temp    92.0
## 562     8  11    Temp    86.0
## 563     8  12    Temp    86.0
## 564     8  13    Temp    82.0
## 565     8  14    Temp    80.0
## 566     8  15    Temp    79.0
## 567     8  16    Temp    77.0
## 568     8  17    Temp    79.0
## 569     8  18    Temp    76.0
## 570     8  19    Temp    78.0
## 571     8  20    Temp    78.0
## 572     8  21    Temp    77.0
## 573     8  22    Temp    72.0
## 574     8  23    Temp    75.0
## 575     8  24    Temp    79.0
## 576     8  25    Temp    81.0
## 577     8  26    Temp    86.0
## 578     8  27    Temp    88.0
## 579     8  28    Temp    97.0
## 580     8  29    Temp    94.0
## 581     8  30    Temp    96.0
## 582     8  31    Temp    94.0
## 583     9   1    Temp    91.0
## 584     9   2    Temp    92.0
## 585     9   3    Temp    93.0
## 586     9   4    Temp    93.0
## 587     9   5    Temp    87.0
## 588     9   6    Temp    84.0
## 589     9   7    Temp    80.0
## 590     9   8    Temp    78.0
## 591     9   9    Temp    75.0
## 592     9  10    Temp    73.0
## 593     9  11    Temp    81.0
## 594     9  12    Temp    76.0
## 595     9  13    Temp    77.0
## 596     9  14    Temp    71.0
## 597     9  15    Temp    71.0
## 598     9  16    Temp    78.0
## 599     9  17    Temp    67.0
## 600     9  18    Temp    76.0
## 601     9  19    Temp    68.0
## 602     9  20    Temp    82.0
## 603     9  21    Temp    64.0
## 604     9  22    Temp    71.0
## 605     9  23    Temp    81.0
## 606     9  24    Temp    69.0
## 607     9  25    Temp    63.0
## 608     9  26    Temp    70.0
## 609     9  27    Temp    77.0
## 610     9  28    Temp    75.0
## 611     9  29    Temp    76.0
## 612     9  30    Temp    68.0
df1<-dplyr::rename(df, enviro = variable, measure = value)

library(ggplot2)

ggplot(df1, aes(x = enviro, y = measure)) +
  geom_boxplot(fill = "skyblue", color = "black") +
  labs(title = "환경 변수별 분포 (boxplot)",
       x = "환경 변수",
       y = "측정값") +
  theme_minimal()
## Warning: Removed 44 rows containing non-finite outside the scale range
## (`stat_boxplot()`).

# ozone : 이상값 존재
# Temp : 이상값 없습니다.

data(mtcars)
head(mtcars)
##                    mpg cyl disp  hp drat    wt  qsec vs am gear carb
## Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
## Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
## Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
## Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
## Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
## Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1
# rownames → 새로운 열(car)로 추가
rownames(mtcars)
##  [1] "Mazda RX4"           "Mazda RX4 Wag"       "Datsun 710"         
##  [4] "Hornet 4 Drive"      "Hornet Sportabout"   "Valiant"            
##  [7] "Duster 360"          "Merc 240D"           "Merc 230"           
## [10] "Merc 280"            "Merc 280C"           "Merc 450SE"         
## [13] "Merc 450SL"          "Merc 450SLC"         "Cadillac Fleetwood" 
## [16] "Lincoln Continental" "Chrysler Imperial"   "Fiat 128"           
## [19] "Honda Civic"         "Toyota Corolla"      "Toyota Corona"      
## [22] "Dodge Challenger"    "AMC Javelin"         "Camaro Z28"         
## [25] "Pontiac Firebird"    "Fiat X1-9"           "Porsche 914-2"      
## [28] "Lotus Europa"        "Ford Pantera L"      "Ferrari Dino"       
## [31] "Maserati Bora"       "Volvo 142E"
mtcars$car <- rownames(mtcars)
head(mtcars)
##                    mpg cyl disp  hp drat    wt  qsec vs am gear carb
## Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
## Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
## Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
## Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
## Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
## Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1
##                                 car
## Mazda RX4                 Mazda RX4
## Mazda RX4 Wag         Mazda RX4 Wag
## Datsun 710               Datsun 710
## Hornet 4 Drive       Hornet 4 Drive
## Hornet Sportabout Hornet Sportabout
## Valiant                     Valiant
melt(mtcars, id.vars = "car",
     variable.name = "feature",
     value.name = "value")
##                     car feature   value
## 1             Mazda RX4     mpg  21.000
## 2         Mazda RX4 Wag     mpg  21.000
## 3            Datsun 710     mpg  22.800
## 4        Hornet 4 Drive     mpg  21.400
## 5     Hornet Sportabout     mpg  18.700
## 6               Valiant     mpg  18.100
## 7            Duster 360     mpg  14.300
## 8             Merc 240D     mpg  24.400
## 9              Merc 230     mpg  22.800
## 10             Merc 280     mpg  19.200
## 11            Merc 280C     mpg  17.800
## 12           Merc 450SE     mpg  16.400
## 13           Merc 450SL     mpg  17.300
## 14          Merc 450SLC     mpg  15.200
## 15   Cadillac Fleetwood     mpg  10.400
## 16  Lincoln Continental     mpg  10.400
## 17    Chrysler Imperial     mpg  14.700
## 18             Fiat 128     mpg  32.400
## 19          Honda Civic     mpg  30.400
## 20       Toyota Corolla     mpg  33.900
## 21        Toyota Corona     mpg  21.500
## 22     Dodge Challenger     mpg  15.500
## 23          AMC Javelin     mpg  15.200
## 24           Camaro Z28     mpg  13.300
## 25     Pontiac Firebird     mpg  19.200
## 26            Fiat X1-9     mpg  27.300
## 27        Porsche 914-2     mpg  26.000
## 28         Lotus Europa     mpg  30.400
## 29       Ford Pantera L     mpg  15.800
## 30         Ferrari Dino     mpg  19.700
## 31        Maserati Bora     mpg  15.000
## 32           Volvo 142E     mpg  21.400
## 33            Mazda RX4     cyl   6.000
## 34        Mazda RX4 Wag     cyl   6.000
## 35           Datsun 710     cyl   4.000
## 36       Hornet 4 Drive     cyl   6.000
## 37    Hornet Sportabout     cyl   8.000
## 38              Valiant     cyl   6.000
## 39           Duster 360     cyl   8.000
## 40            Merc 240D     cyl   4.000
## 41             Merc 230     cyl   4.000
## 42             Merc 280     cyl   6.000
## 43            Merc 280C     cyl   6.000
## 44           Merc 450SE     cyl   8.000
## 45           Merc 450SL     cyl   8.000
## 46          Merc 450SLC     cyl   8.000
## 47   Cadillac Fleetwood     cyl   8.000
## 48  Lincoln Continental     cyl   8.000
## 49    Chrysler Imperial     cyl   8.000
## 50             Fiat 128     cyl   4.000
## 51          Honda Civic     cyl   4.000
## 52       Toyota Corolla     cyl   4.000
## 53        Toyota Corona     cyl   4.000
## 54     Dodge Challenger     cyl   8.000
## 55          AMC Javelin     cyl   8.000
## 56           Camaro Z28     cyl   8.000
## 57     Pontiac Firebird     cyl   8.000
## 58            Fiat X1-9     cyl   4.000
## 59        Porsche 914-2     cyl   4.000
## 60         Lotus Europa     cyl   4.000
## 61       Ford Pantera L     cyl   8.000
## 62         Ferrari Dino     cyl   6.000
## 63        Maserati Bora     cyl   8.000
## 64           Volvo 142E     cyl   4.000
## 65            Mazda RX4    disp 160.000
## 66        Mazda RX4 Wag    disp 160.000
## 67           Datsun 710    disp 108.000
## 68       Hornet 4 Drive    disp 258.000
## 69    Hornet Sportabout    disp 360.000
## 70              Valiant    disp 225.000
## 71           Duster 360    disp 360.000
## 72            Merc 240D    disp 146.700
## 73             Merc 230    disp 140.800
## 74             Merc 280    disp 167.600
## 75            Merc 280C    disp 167.600
## 76           Merc 450SE    disp 275.800
## 77           Merc 450SL    disp 275.800
## 78          Merc 450SLC    disp 275.800
## 79   Cadillac Fleetwood    disp 472.000
## 80  Lincoln Continental    disp 460.000
## 81    Chrysler Imperial    disp 440.000
## 82             Fiat 128    disp  78.700
## 83          Honda Civic    disp  75.700
## 84       Toyota Corolla    disp  71.100
## 85        Toyota Corona    disp 120.100
## 86     Dodge Challenger    disp 318.000
## 87          AMC Javelin    disp 304.000
## 88           Camaro Z28    disp 350.000
## 89     Pontiac Firebird    disp 400.000
## 90            Fiat X1-9    disp  79.000
## 91        Porsche 914-2    disp 120.300
## 92         Lotus Europa    disp  95.100
## 93       Ford Pantera L    disp 351.000
## 94         Ferrari Dino    disp 145.000
## 95        Maserati Bora    disp 301.000
## 96           Volvo 142E    disp 121.000
## 97            Mazda RX4      hp 110.000
## 98        Mazda RX4 Wag      hp 110.000
## 99           Datsun 710      hp  93.000
## 100      Hornet 4 Drive      hp 110.000
## 101   Hornet Sportabout      hp 175.000
## 102             Valiant      hp 105.000
## 103          Duster 360      hp 245.000
## 104           Merc 240D      hp  62.000
## 105            Merc 230      hp  95.000
## 106            Merc 280      hp 123.000
## 107           Merc 280C      hp 123.000
## 108          Merc 450SE      hp 180.000
## 109          Merc 450SL      hp 180.000
## 110         Merc 450SLC      hp 180.000
## 111  Cadillac Fleetwood      hp 205.000
## 112 Lincoln Continental      hp 215.000
## 113   Chrysler Imperial      hp 230.000
## 114            Fiat 128      hp  66.000
## 115         Honda Civic      hp  52.000
## 116      Toyota Corolla      hp  65.000
## 117       Toyota Corona      hp  97.000
## 118    Dodge Challenger      hp 150.000
## 119         AMC Javelin      hp 150.000
## 120          Camaro Z28      hp 245.000
## 121    Pontiac Firebird      hp 175.000
## 122           Fiat X1-9      hp  66.000
## 123       Porsche 914-2      hp  91.000
## 124        Lotus Europa      hp 113.000
## 125      Ford Pantera L      hp 264.000
## 126        Ferrari Dino      hp 175.000
## 127       Maserati Bora      hp 335.000
## 128          Volvo 142E      hp 109.000
## 129           Mazda RX4    drat   3.900
## 130       Mazda RX4 Wag    drat   3.900
## 131          Datsun 710    drat   3.850
## 132      Hornet 4 Drive    drat   3.080
## 133   Hornet Sportabout    drat   3.150
## 134             Valiant    drat   2.760
## 135          Duster 360    drat   3.210
## 136           Merc 240D    drat   3.690
## 137            Merc 230    drat   3.920
## 138            Merc 280    drat   3.920
## 139           Merc 280C    drat   3.920
## 140          Merc 450SE    drat   3.070
## 141          Merc 450SL    drat   3.070
## 142         Merc 450SLC    drat   3.070
## 143  Cadillac Fleetwood    drat   2.930
## 144 Lincoln Continental    drat   3.000
## 145   Chrysler Imperial    drat   3.230
## 146            Fiat 128    drat   4.080
## 147         Honda Civic    drat   4.930
## 148      Toyota Corolla    drat   4.220
## 149       Toyota Corona    drat   3.700
## 150    Dodge Challenger    drat   2.760
## 151         AMC Javelin    drat   3.150
## 152          Camaro Z28    drat   3.730
## 153    Pontiac Firebird    drat   3.080
## 154           Fiat X1-9    drat   4.080
## 155       Porsche 914-2    drat   4.430
## 156        Lotus Europa    drat   3.770
## 157      Ford Pantera L    drat   4.220
## 158        Ferrari Dino    drat   3.620
## 159       Maserati Bora    drat   3.540
## 160          Volvo 142E    drat   4.110
## 161           Mazda RX4      wt   2.620
## 162       Mazda RX4 Wag      wt   2.875
## 163          Datsun 710      wt   2.320
## 164      Hornet 4 Drive      wt   3.215
## 165   Hornet Sportabout      wt   3.440
## 166             Valiant      wt   3.460
## 167          Duster 360      wt   3.570
## 168           Merc 240D      wt   3.190
## 169            Merc 230      wt   3.150
## 170            Merc 280      wt   3.440
## 171           Merc 280C      wt   3.440
## 172          Merc 450SE      wt   4.070
## 173          Merc 450SL      wt   3.730
## 174         Merc 450SLC      wt   3.780
## 175  Cadillac Fleetwood      wt   5.250
## 176 Lincoln Continental      wt   5.424
## 177   Chrysler Imperial      wt   5.345
## 178            Fiat 128      wt   2.200
## 179         Honda Civic      wt   1.615
## 180      Toyota Corolla      wt   1.835
## 181       Toyota Corona      wt   2.465
## 182    Dodge Challenger      wt   3.520
## 183         AMC Javelin      wt   3.435
## 184          Camaro Z28      wt   3.840
## 185    Pontiac Firebird      wt   3.845
## 186           Fiat X1-9      wt   1.935
## 187       Porsche 914-2      wt   2.140
## 188        Lotus Europa      wt   1.513
## 189      Ford Pantera L      wt   3.170
## 190        Ferrari Dino      wt   2.770
## 191       Maserati Bora      wt   3.570
## 192          Volvo 142E      wt   2.780
## 193           Mazda RX4    qsec  16.460
## 194       Mazda RX4 Wag    qsec  17.020
## 195          Datsun 710    qsec  18.610
## 196      Hornet 4 Drive    qsec  19.440
## 197   Hornet Sportabout    qsec  17.020
## 198             Valiant    qsec  20.220
## 199          Duster 360    qsec  15.840
## 200           Merc 240D    qsec  20.000
## 201            Merc 230    qsec  22.900
## 202            Merc 280    qsec  18.300
## 203           Merc 280C    qsec  18.900
## 204          Merc 450SE    qsec  17.400
## 205          Merc 450SL    qsec  17.600
## 206         Merc 450SLC    qsec  18.000
## 207  Cadillac Fleetwood    qsec  17.980
## 208 Lincoln Continental    qsec  17.820
## 209   Chrysler Imperial    qsec  17.420
## 210            Fiat 128    qsec  19.470
## 211         Honda Civic    qsec  18.520
## 212      Toyota Corolla    qsec  19.900
## 213       Toyota Corona    qsec  20.010
## 214    Dodge Challenger    qsec  16.870
## 215         AMC Javelin    qsec  17.300
## 216          Camaro Z28    qsec  15.410
## 217    Pontiac Firebird    qsec  17.050
## 218           Fiat X1-9    qsec  18.900
## 219       Porsche 914-2    qsec  16.700
## 220        Lotus Europa    qsec  16.900
## 221      Ford Pantera L    qsec  14.500
## 222        Ferrari Dino    qsec  15.500
## 223       Maserati Bora    qsec  14.600
## 224          Volvo 142E    qsec  18.600
## 225           Mazda RX4      vs   0.000
## 226       Mazda RX4 Wag      vs   0.000
## 227          Datsun 710      vs   1.000
## 228      Hornet 4 Drive      vs   1.000
## 229   Hornet Sportabout      vs   0.000
## 230             Valiant      vs   1.000
## 231          Duster 360      vs   0.000
## 232           Merc 240D      vs   1.000
## 233            Merc 230      vs   1.000
## 234            Merc 280      vs   1.000
## 235           Merc 280C      vs   1.000
## 236          Merc 450SE      vs   0.000
## 237          Merc 450SL      vs   0.000
## 238         Merc 450SLC      vs   0.000
## 239  Cadillac Fleetwood      vs   0.000
## 240 Lincoln Continental      vs   0.000
## 241   Chrysler Imperial      vs   0.000
## 242            Fiat 128      vs   1.000
## 243         Honda Civic      vs   1.000
## 244      Toyota Corolla      vs   1.000
## 245       Toyota Corona      vs   1.000
## 246    Dodge Challenger      vs   0.000
## 247         AMC Javelin      vs   0.000
## 248          Camaro Z28      vs   0.000
## 249    Pontiac Firebird      vs   0.000
## 250           Fiat X1-9      vs   1.000
## 251       Porsche 914-2      vs   0.000
## 252        Lotus Europa      vs   1.000
## 253      Ford Pantera L      vs   0.000
## 254        Ferrari Dino      vs   0.000
## 255       Maserati Bora      vs   0.000
## 256          Volvo 142E      vs   1.000
## 257           Mazda RX4      am   1.000
## 258       Mazda RX4 Wag      am   1.000
## 259          Datsun 710      am   1.000
## 260      Hornet 4 Drive      am   0.000
## 261   Hornet Sportabout      am   0.000
## 262             Valiant      am   0.000
## 263          Duster 360      am   0.000
## 264           Merc 240D      am   0.000
## 265            Merc 230      am   0.000
## 266            Merc 280      am   0.000
## 267           Merc 280C      am   0.000
## 268          Merc 450SE      am   0.000
## 269          Merc 450SL      am   0.000
## 270         Merc 450SLC      am   0.000
## 271  Cadillac Fleetwood      am   0.000
## 272 Lincoln Continental      am   0.000
## 273   Chrysler Imperial      am   0.000
## 274            Fiat 128      am   1.000
## 275         Honda Civic      am   1.000
## 276      Toyota Corolla      am   1.000
## 277       Toyota Corona      am   0.000
## 278    Dodge Challenger      am   0.000
## 279         AMC Javelin      am   0.000
## 280          Camaro Z28      am   0.000
## 281    Pontiac Firebird      am   0.000
## 282           Fiat X1-9      am   1.000
## 283       Porsche 914-2      am   1.000
## 284        Lotus Europa      am   1.000
## 285      Ford Pantera L      am   1.000
## 286        Ferrari Dino      am   1.000
## 287       Maserati Bora      am   1.000
## 288          Volvo 142E      am   1.000
## 289           Mazda RX4    gear   4.000
## 290       Mazda RX4 Wag    gear   4.000
## 291          Datsun 710    gear   4.000
## 292      Hornet 4 Drive    gear   3.000
## 293   Hornet Sportabout    gear   3.000
## 294             Valiant    gear   3.000
## 295          Duster 360    gear   3.000
## 296           Merc 240D    gear   4.000
## 297            Merc 230    gear   4.000
## 298            Merc 280    gear   4.000
## 299           Merc 280C    gear   4.000
## 300          Merc 450SE    gear   3.000
## 301          Merc 450SL    gear   3.000
## 302         Merc 450SLC    gear   3.000
## 303  Cadillac Fleetwood    gear   3.000
## 304 Lincoln Continental    gear   3.000
## 305   Chrysler Imperial    gear   3.000
## 306            Fiat 128    gear   4.000
## 307         Honda Civic    gear   4.000
## 308      Toyota Corolla    gear   4.000
## 309       Toyota Corona    gear   3.000
## 310    Dodge Challenger    gear   3.000
## 311         AMC Javelin    gear   3.000
## 312          Camaro Z28    gear   3.000
## 313    Pontiac Firebird    gear   3.000
## 314           Fiat X1-9    gear   4.000
## 315       Porsche 914-2    gear   5.000
## 316        Lotus Europa    gear   5.000
## 317      Ford Pantera L    gear   5.000
## 318        Ferrari Dino    gear   5.000
## 319       Maserati Bora    gear   5.000
## 320          Volvo 142E    gear   4.000
## 321           Mazda RX4    carb   4.000
## 322       Mazda RX4 Wag    carb   4.000
## 323          Datsun 710    carb   1.000
## 324      Hornet 4 Drive    carb   1.000
## 325   Hornet Sportabout    carb   2.000
## 326             Valiant    carb   1.000
## 327          Duster 360    carb   4.000
## 328           Merc 240D    carb   2.000
## 329            Merc 230    carb   2.000
## 330            Merc 280    carb   4.000
## 331           Merc 280C    carb   4.000
## 332          Merc 450SE    carb   3.000
## 333          Merc 450SL    carb   3.000
## 334         Merc 450SLC    carb   3.000
## 335  Cadillac Fleetwood    carb   4.000
## 336 Lincoln Continental    carb   4.000
## 337   Chrysler Imperial    carb   4.000
## 338            Fiat 128    carb   1.000
## 339         Honda Civic    carb   2.000
## 340      Toyota Corolla    carb   1.000
## 341       Toyota Corona    carb   1.000
## 342    Dodge Challenger    carb   2.000
## 343         AMC Javelin    carb   2.000
## 344          Camaro Z28    carb   4.000
## 345    Pontiac Firebird    carb   2.000
## 346           Fiat X1-9    carb   1.000
## 347       Porsche 914-2    carb   2.000
## 348        Lotus Europa    carb   2.000
## 349      Ford Pantera L    carb   4.000
## 350        Ferrari Dino    carb   6.000
## 351       Maserati Bora    carb   8.000
## 352          Volvo 142E    carb   2.000
df_long <- melt(mtcars, id.vars = "car",
                variable.name = "feature",
                value.name = "value")

ggplot(mtcars, aes(x = hp, y = mpg, label = rownames(mtcars))) +
  geom_point() +
  geom_text(nudge_y = 1, size = 3) +
  labs(title = "마력(hp) vs 연비(mpg)", x = "마력", y = "연비") +
  theme_minimal()

# nudge_y = 1, 텍스트를 y축 방향으로 1만큼 위로
# 이동하여 겹치지 않도록 함

#install.packages("plyr")
library(plyr)
## ------------------------------------------------------------------------------
## You have loaded plyr after dplyr - this is likely to cause problems.
## If you need functions from both plyr and dplyr, please load plyr first, then dplyr:
## library(plyr); library(dplyr)
## ------------------------------------------------------------------------------
## 
## Attaching package: 'plyr'
## The following objects are masked from 'package:dplyr':
## 
##     arrange, count, desc, failwith, id, mutate, rename, summarise,
##     summarize
## ------------------------------------------------------------------------------
## You have loaded plyr after dplyr - this is likely to cause problems.
## If you need functions from both plyr and dplyr, please load plyr first, then dplyr:
## library(plyr); library(dplyr)
## ------------------------------------------------------------------------------
## 
## Attaching package: 'plyr'
## The following objects are masked from 'package:dplyr':
## 
##     arrange, count, desc, failwith, id, mutate, rename, summarise,
##     summarize
# plyr 패키지의 함수로, dataframe을 분할하고
# 결과도 dataframe으로 반환
# month 변수 기준 데이터를 그룹별로 분할
# 각 그룹에 요약함수를 적용하여 새 dataframe 생성
class(airquality)
## [1] "data.frame"
# na.rm = TRUE : 결측값 제외
df2 <- ddply(airquality, .(Month), summarise,
             Mean_Ozone = mean(Ozone, na.rm = TRUE))
class(df2)
## [1] "data.frame"
## [1] "data.frame"
# ADSP 시험에선 ddply의 의미가 출제
# dataframe으로 입력받고 dataframe으로 출력하는
# dply는 ? 정답 : ddply()