도매시장 경락 데이터의 이해 - 배추(2/3)
지난 Post에 이어서 이상치로 판단되는 10,000원 이상의 kg당 가격 케이스를 삭제한 dat3
데이터를 이용하여 도매시장 경매와 관련한 각 변수들 간의 관계를 눈으로 확인해보자. 이번 Post에서는 Cross tabulation라고도 불리는 교차분석 방법으로 명목형(categorical) 변수들 간의 관계를 보려고 한다. 교차분석은 두 변수 간의 관계를 한 변수는 X축, 다른 한 변수는 Y축 방향으로 각 변수의 요소들을 나열하고 각각의 경우에 대한 연속형 변수의 값을 보여주는 것이다. 예를들어 성별, 결혼유무 두 명목형 변수와 행복지수라는 하나의 연속형 변수가 있을 때 이를 남-기혼
, 남-미혼
, 여-기혼
, 여-미혼
으로 표현되는 2x2
표를 만들고 각 케이스에 속하는 사람들의 행복지수 평균을 구해서 비교하는 것이 교차분석의 예이다.
연도-월 반입량
먼저 연도와 월 변수간의 관계를 도매시장 반입량(kg) weight
변수로 비교해보자. input_year_month
는 dat3
으로부터 group_by()
함수로 year
, month
변수의 각각의 케이스별로 그룹화한 후 각 그룹 내에서 mutate()
함수로 weight
변수의 합을 구해서 새로운 input
변수를 만든다. 여기까지는 dplyr
패키지가 신속하게 처리해준다. 다음은 tidyr
패키지의 spread()
함수를 이용해서 2개 변수로 그룹핑된 데이터를 그중 1개의 변수를 x축 방향으로 늘어뜨린 형태로 펼쳐준다. MS엑셀의 피벗 테이블 기능과 유사한 결과를 만들어준다. 마지막으로 우리가 원하는 형태로 만들어진 데이터프레임은 ungroup()
함수를 이용해서 그룹을 풀어준다.(group화된 데이터프레임을 입력 데이터로 쓸 경우 오류가 발생하는 경우가 있다.) 문자값을 가진 첫번째 열을 제거한 숫자로만 구성된 데이터를 matrix형으로 형변환을 해서 1000을 나누어 단위를 ton으로 변환하여 d5
에 저장한 후, hist3D()
함수를 이용해서 3D bar chart를 그린다. `hist3D()’에 대한 구체적인 설명은 R study Post를 참고하자.
library(plotly); library(plot3D); library(dplyr); library(tidyr); library(ggplot2); library(gridExtra); library(knitr); library(kableExtra); library(reshape2)
input_year_month <- dat3 %>% group_by(year,month) %>% summarise(input=sum(weight,na.rm=T)) %>% spread(month,input,fill=0) %>% ungroup()
d5 <- as.matrix(input_year_month[,-1])/1000
hist3D(z = d5, x = as.numeric(t(input_year_month[,1])), y = 1:12, scale = F, expand = 0.00005, bty = "g", phi = 30, theta = 20, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab='year',ylab='month',zlab='ton')
위에서 3D 그래프로 표현된 연도-월별 반입량 정보와 아래에 테이블로 표현된 동일한 정보 중 어떤 것이 더 해석하기가 쉬운가? 대부분의 사람들의 뇌는 숫자가 가지는 상징성보다는 서로 다른 길이와 색깔을 가진 이미지를 인지하고 판별하는 것이 더 편해 할 것이다.(숫자가 훨씬 더 편한 천재과의 사람도 있겠지만..) 그런 의미에서 Agdatalab blog에서는 분석결과들을 되도록 그래프와 같은 시각적인 결과물로 설명하는 방향으로 하겠다.
그래프를 보는 방법은 x축은 year
, y축은 month
를 표현한다. z축은 weight
변수로 단위는 ton
이다. 색깔은 ton
의 수치를 설명하는 것으로 파란색의 2만톤 이하 수준에서 하늘색을 거처 노란색의 6만톤 수준을 지나 주황색을 넘어 빨간색의 8만톤 수준까지를 표현한다. 월별로 보면 대체로 겨울철, 봄철의 반입량은 낮은 수준이고 여름이 지나고 가을철이 되면 급증하는 패턴을 보인다. 연도별로는 대체로 비슷한 수준에서 조금씩 변화하는 패턴을 보이나 2014년의 반입량이 전반적으로 적은 것으로 나타나고 있다. 이정도의 차이가 실제로 있었는지는 도매시장 통계 비교 Post에서 별도로 다루도록 하자.
year | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 | 21618892 | 24262511 | 35974384 | 42777652 | 45986369 | 48435377 | 44811207 | 45990349 | 50327342 | 49884182 | 68488848 | 40422086 |
2003 | 23973524 | 24374740 | 36996336 | 46495794 | 51253451 | 55942605 | 40323383 | 52867831 | 52116815 | 53139867 | 60986609 | 63520011 |
2004 | 25930574 | 31027697 | 48115740 | 50694088 | 51261774 | 59172152 | 43918354 | 41852555 | 64258918 | 56305805 | 63274139 | 50738827 |
2005 | 26025686 | 21824148 | 40117468 | 49384730 | 47300723 | 39768053 | 39233026 | 47394528 | 49731437 | 41224279 | 66986360 | 55757743 |
2006 | 21502574 | 19857836 | 29950862 | 29268587 | 37489585 | 51401765 | 34017370 | 36000088 | 56039372 | 48993816 | 73764710 | 50653469 |
2007 | 24352858 | 24584323 | 30770390 | 35104782 | 41635096 | 45939875 | 39063467 | 50409252 | 57540988 | 56005479 | 76707299 | 70990305 |
2008 | 29684565 | 26540569 | 37232746 | 23237032 | 36603517 | 43017982 | 41728114 | 45694493 | 41067192 | 36061154 | 69492645 | 29644326 |
2009 | 24558644 | 28250560 | 31604264 | 23318108 | 34451251 | 50995677 | 46785888 | 37158732 | 45136631 | 26381114 | 77979603 | 29003118 |
2010 | 25255905 | 23893883 | 28114883 | 27554414 | 39264900 | 51274929 | 39429761 | 48753668 | 34486810 | 38780110 | 95494750 | 60024178 |
2011 | 23022055 | 22792529 | 32377491 | 41006963 | 46992998 | 52633798 | 38415399 | 45706137 | 61668396 | 58857029 | 85206981 | 52501466 |
2012 | 23236770 | 25752848 | 29846311 | 23812150 | 37373101 | 35017023 | 31251853 | 44861785 | 36542286 | 32134512 | 75095352 | 67043673 |
2013 | 29622966 | 25281356 | 31304439 | 34822611 | 37046359 | 41095253 | 40409566 | 38790234 | 54204473 | 55485512 | 70067134 | 35839637 |
2014 | 19605400 | 16793884 | 20102531 | 22174160 | 22971975 | 24449792 | 28046438 | 32301291 | 52897298 | 56366748 | 86672451 | 65602038 |
2015 | 28513081 | 27286441 | 32882904 | 34862719 | 33214085 | 42382785 | 41738884 | 44553143 | 66506572 | 54200735 | 60158933 | 56386235 |
2016 | 24366738 | 20246805 | 20444264 | 26994303 | 34792776 | 43713673 | 42115420 | 38728304 | 42782904 | 49226440 | 92933781 | 67823709 |
2017 | 28998725 | 26594175 | 33337786 | 46071641 | 48031176 | 39740758 | 37701978 | 37759979 | 61702199 | 47455772 | 83353067 | 54442400 |
2018 | 27412006 | 25901712 | 33643943 | 34161238 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
.
연도-월 명목가격
다음은 연도-월별 kg당 가격에 대한 교차분석 결과를 3D 그래프로 살펴보자. R 코드는 반입량 분석 코드와 동일하며 그래프의 z축에 해당하는 값만 반입량에서 가격으로 변경하였다. 월별로 편차가 있기는 하나 2005년 이후부터 꾸준히 가격이 증하하는 추세를 보이고 있다. 이는 16년 전의 배추 가격이 현재의 가격과 동일한 가치를 가지는 것이 아니기 때문에 물가상승률에 대한 할인율의 적용이 필요하다. 물가상승 할인율 데이터는 소비자물가지수와 할인율 계산 Post를 통해서 만들 수 있으며 이번 Post에서 사용한 데이터는 AWS S3 Agdata Lab 저장소에서 받을 수 있다.
price_year_month <- dat3 %>% group_by(year,month) %>% summarise(price=mean(price_per_kg,na.rm=T)) %>% spread(month,price,fill=0) %>% ungroup()
d6 <- as.matrix(price_year_month[,-1])
hist3D(z = d6, x = as.numeric(t(price_year_month[,1])), y = 1:12, scale = FALSE, expand = 0.002, bty = "g", phi = 30, theta = 20, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab='year',ylab='month',zlab='ton')
연도-월 실질가격
할인율 적용은 농축수산물 소비자물가지수에 대한 할인율을 적용하였다. 2002년을 지수 100으로 두었을 때 매년 증가한 물가에 대한 정보를 담고 있으며 2018년에는 2002년 대비 76.5%나 증가한 것으로 나타났다. 3D 막대그래프도 앞선 그래프와 비교해보면 물가상승 효과가 완화된 것을 느낄 수 있다. 물가 상승을 통제한 표준화된 가격을 이용해서 그래프를 해석해보면 2004년 이전에는 배추가격이 비교적 낮았으나 2005, 2006년에는 9, 10월 가격이 급등하였고 2009년 이후에는 2009, 2010, 2015, 2016년에 3,4월 가격이 급등하는 현상이 나타나고 있다. 9월 가격 폭등은 2005, 2010, 2016에 두드러져서 5~6년 주기를 보여주고 있다. 3,4월 가격 급등도 6년 주기였는데.. 주기가 정말 존재하는지는 더 장기간의 데이터를 들여다봐야 알 수 있을 것이다.
ds_rate <- read.csv('CPI_KOR_1975-2018(2002).csv',stringsAsFactors = F)
price_year_month_norm <- merge(price_year_month,ds_rate[,c('year',"agri_2002")],by='year',all.x=T)
price_year_month_norm[,2:13] <- price_year_month_norm[,2:13]/price_year_month_norm$agri_2002*100
d6b <- as.matrix(price_year_month_norm[,2:13])
hist3D(z = d6b, x = as.numeric(t(price_year_month[,1])), y = 1:12, scale = FALSE, expand = 0.004, bty = "g", phi = 30, theta = 20,
col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90,
space = 0.4, ticktype = "detailed", d = 2, xlab='year',ylab='month',zlab='ton')
28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
year | 2002 | 2003.0000 | 2004.0000 | 2005.00 | 2006.0000 | 2007.0000 | 2008.0000 | 2009.0000 | 2010.0000 | 2011.0000 | 2012.0000 | 2013.0000 | 2014.0000 | 2015.0000 | 2016.0000 | 2017.0000 | 2018.0000 |
agri_2002 | 100 | 105.9114 | 115.3728 | 117.54 | 117.4034 | 119.6466 | 120.2338 | 127.9828 | 140.8153 | 153.7703 | 158.6003 | 157.5723 | 153.3338 | 156.3754 | 162.3177 | 171.2452 | 176.5538 |
year | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | agri_2002 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 | 328.6469 | 255.4147 | 195.2210 | 248.6271 | 340.1623 | 308.4838 | 321.2684 | 634.7203 | 773.3154 | 336.6829 | 391.9542 | 523.6327 | 100.0000 |
2003 | 579.0721 | 562.6274 | 686.9667 | 640.5789 | 432.1552 | 247.6070 | 426.2201 | 433.6598 | 530.2393 | 637.6695 | 443.8112 | 289.4393 | 105.9114 |
2004 | 318.0308 | 325.8367 | 386.5312 | 392.9490 | 325.1486 | 313.8533 | 617.3544 | 801.7993 | 611.6009 | 392.8314 | 330.1530 | 309.3549 | 115.3728 |
2005 | 411.5246 | 493.2256 | 415.0829 | 360.3797 | 335.4123 | 366.5772 | 605.8079 | 718.2070 | 857.4845 | 1044.2792 | 648.8109 | 720.5630 | 117.5400 |
2006 | 874.2845 | 788.0074 | 839.5683 | 910.8342 | 705.9789 | 467.1779 | 798.0544 | 1055.8382 | 850.9822 | 433.7164 | 427.7323 | 546.5022 | 117.4034 |
2007 | 688.4329 | 599.9148 | 765.6876 | 683.9606 | 491.2147 | 509.2468 | 635.6266 | 700.2879 | 835.3072 | 887.0079 | 633.5956 | 538.5620 | 119.6466 |
2008 | 696.3427 | 659.1908 | 681.2098 | 734.6185 | 577.2152 | 504.4308 | 560.8539 | 698.0015 | 533.2037 | 525.6422 | 445.6017 | 565.0299 | 120.2338 |
2009 | 751.4572 | 699.7234 | 883.1145 | 1065.2788 | 757.1504 | 519.5509 | 641.8104 | 780.1094 | 615.8169 | 468.1113 | 445.9851 | 637.7052 | 127.9828 |
2010 | 811.2392 | 889.6551 | 1183.0624 | 1247.8213 | 821.3494 | 592.7972 | 843.7170 | 785.9709 | 1090.6904 | 914.8927 | 612.5531 | 690.7093 | 140.8153 |
2011 | 984.5003 | 823.0415 | 885.2974 | 653.1849 | 477.9281 | 498.2782 | 753.6627 | 903.9928 | 686.7751 | 523.4666 | 402.1068 | 607.2792 | 153.7703 |
2012 | 830.5997 | 895.8046 | 982.5614 | 980.5603 | 684.4936 | 576.4903 | 631.0004 | 741.0731 | 898.4406 | 702.1659 | 565.2313 | 685.8206 | 158.6003 |
2013 | 880.4436 | 864.2342 | 920.8149 | 874.9127 | 670.4182 | 635.0543 | 689.6589 | 919.4177 | 748.9775 | 501.4282 | 449.0451 | 551.3662 | 157.5723 |
2014 | 657.4545 | 659.2550 | 696.2255 | 692.4711 | 568.0624 | 691.0469 | 728.6370 | 776.3989 | 732.0584 | 602.5857 | 525.2290 | 660.1317 | 153.3338 |
2015 | 794.7274 | 787.0198 | 961.6222 | 1057.0086 | 1046.6849 | 834.5199 | 715.8066 | 845.1595 | 672.1228 | 592.1097 | 564.9828 | 693.6781 | 156.3754 |
2016 | 948.7020 | 909.7008 | 1191.1537 | 1235.2366 | 920.5769 | 789.9224 | 867.8248 | 1163.6142 | 1277.3104 | 855.0916 | 670.9123 | 751.8903 | 162.3177 |
2017 | 857.6474 | 940.2872 | 1023.8852 | 816.3808 | 689.6022 | 668.7896 | 843.0978 | 1101.3248 | 928.2253 | 594.9399 | 495.6199 | 672.8289 | 171.2452 |
2018 | 794.7209 | 903.2725 | 842.6128 | 946.6059 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 176.5538 |
.
산지-월 출하량
산지-월별 출하량 패턴을 살펴보자. R 코드는 연도-월별 반입량 계산 코드에서 연도 대신 산지 변수 sanji_wide2
가 들어갔다. 3D 그래프의 각도는 hist3D()
함수의 phi
, theta
파라메터를 그래프의 패턴이 눈에 잘 보이도록 조정하면 된다. 산지의 개수는 총 22개이지만 출하량의 비중이 낮은 8개의 광역도 단위 지역만 포함시켰다. 이를 위해 산지별 총 출하량 total
변수를 만들어서 내림차순 정렬을 해서 상위 9개 (결측지역 1개 포함)만으로 그래프용 d8
테이블을 생성하였다.
먼저 전남과 강원 지역이 출하량(동일한 물동량이지만 산지기준에서는 출하의 개념이고 도매시장 기준에서는 출하된 물량을 반입하기 때문에 반입량이 된다)에서 앞도적으로 많다. 전남은 1~4월, 12월이 주 출하기이고 강원은 7~10월이 주 출하기이다. 세번째 출하지인 경북은 전남, 강원의 화력이 교체되는 틈새인 6, 11월이 주 출하기이고 네번째 출하지인 충남 역시 틈새 중 5, 11월이 주 출하기이다. 전남과 거리가 가까운 충남, 경남은 5월이 상반기 주력이고 강원도와 거리가 가까운 경북,경기,충북은 6월이 상반기 주력인 것은 지리적으로도 해석이 잘 된다. 나머지 지역들이 최대 산지인 전남과 강원이 교체되는 틈새 시기에 출하량이 많은 것은 기후요인 때문인지 전략적인 선택인지는 파악이 어려우나 두 요인의 적절한 결합확률에 의한 의사결정으로 볼 수는 있을 것 같다.
input_sanji_month <- dat3 %>% group_by(sanji_wide2,month) %>% summarise(input=sum(weight,na.rm=T)) %>% spread(month,input,fill=0) %>% ungroup()
input_sanji_month <- input_sanji_month %>% mutate(total=apply(input_sanji_month[,-1],1,sum)) %>% arrange(desc(total))
d8 <- as.matrix(input_sanji_month[1:9,2:13])/1000
hist3D(z = d8, x=1:9, y=1:12, scale = FALSE, expand = 0.000005, bty = "g", phi = 40, theta = 15, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab="전남 강원 경북 결측 충남 경기 전북 경남 충북", ylab="month", zlab='ton', cex.lab=1.1)
sanji_wide2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | total |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
전라남도 | 279513813 | 279210979 | 375142976 | 340763704 | 154193551 | 42221822 | 23719172.8 | 24570363 | 32239268 | 23024190.7 | 178220785 | 429695368 | 2182515992 |
강원도 | 12196078 | 11836039 | 14248507 | 10950453 | 16372005 | 152552050 | 337151077.3 | 431674314 | 528123686 | 376169412.6 | 192966404 | 34853070 | 2119093096 |
경상북도 | 6669674 | 4387938 | 6030339 | 8769174 | 29361076 | 158924331 | 68387137.4 | 21934524 | 18960237 | 86815350.5 | 183342477 | 40764214 | 634346472 |
a | 24475215 | 22688493 | 27675445 | 32157388 | 45716340 | 45889218 | 34251769.2 | 39462042 | 51108342 | 46290350.7 | 80994847 | 67681175 | 518390624 |
충청남도 | 5454257 | 4331462 | 4417604 | 38078300 | 123446429 | 55265974 | 7465270.1 | 6800919 | 7891021 | 13884348.9 | 159578099 | 35317376 | 461931062 |
경기도 | 19066293 | 20086061 | 25959330 | 25568605 | 42060828 | 59692495 | 32192286.0 | 32807543 | 38136523 | 44469745.4 | 89615277 | 28479866 | 458134852 |
경상남도 | 13881127 | 10716571 | 13104888 | 24696276 | 86608637 | 28085193 | 15850225.7 | 15564272 | 18494142 | 17753559.1 | 35748207 | 54196455 | 334699552 |
전라북도 | 8323265 | 6809654 | 9057538 | 17438666 | 32768439 | 24109670 | 20103092.4 | 20848761 | 24221443 | 19890655.9 | 92286938 | 55593829 | 331451951 |
충청북도 | 4752974 | 5101407 | 6820007 | 7238837 | 23828210 | 71542641 | 16967834.0 | 11267540 | 14886617 | 54870603.6 | 71586088 | 10056809 | 298919567 |
대구광역시 | 10610687 | 10600700 | 17086185 | 19881853 | 19199388 | 17417516 | 16360896.4 | 17858350 | 18070718 | 15347434.6 | 24848152 | 23238872 | 210520753 |
광주광역시 | 7903617 | 7913781 | 10691562 | 14780731 | 13719446 | 11660884 | 12519015.7 | 14208237 | 19908489 | 16130955.5 | 20439349 | 18552513 | 168428579 |
인천광역시 | 7281335 | 7147421 | 9874780 | 10254699 | 12141396 | 13843689 | 10492604.5 | 13754590 | 13743828 | 11734854.3 | 21414037 | 10833962 | 142517194 |
서울특별시 | 6793944 | 6239844 | 9101553 | 12950604 | 12363082 | 12174925 | 10261053.4 | 12577149 | 15175875 | 12370661.7 | 17531681 | 10327340 | 137867711 |
부산광역시 | 10040291 | 7910101 | 10276670 | 12167405 | 12945813 | 12921677 | 9252561.2 | 9806346 | 9395280 | 7660870.4 | 12846431 | 12531205 | 127754651 |
대전광역시 | 4727695 | 5134457 | 6794150 | 8648510 | 11311575 | 12377277 | 9558654.1 | 10486972 | 10284481 | 9744998.2 | 17195204 | 7283396 | 113547370 |
울산광역시 | 3482716 | 2839205 | 3763092 | 3519688 | 4761877 | 4647014 | 3490655.4 | 3848201 | 4446769 | 3483801.6 | 5280409 | 7636321 | 51199748 |
제주특별자치도 | 2507003 | 2311052 | 2765436 | 3875209 | 4860919 | 1654805 | 966390.5 | 1338473 | 1921698 | 815475.9 | 2752329 | 3343955 | 29112745 |
중국 | 981 | 853 | 6679 | 860 | 10104 | 312 | 100.0 | 504 | 1214 | 45155.0 | 14535 | 6805 | 88102 |
미국 | 0 | 0 | 0 | 10 | 20 | 4 | 0.0 | 7950 | 0 | 0.0 | 1411 | 691 | 10086 |
러시아 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0 | 5000 | 0 | 0.0 | 0 | 0 | 5000 |
기타국 | 0 | 0 | 0 | 0 | 0 | 0 | 310.0 | 320 | 0 | 0.0 | 0 | 0 | 630 |
태국 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0 | 0 | 0 | 130.0 | 0 | 0 | 130 |
.
산지-월 실질가격
이후 분석에서도 할인율 적용 가격이 계속 사용될 것이므로 할인율 적용 가격을 price_per_kg_norm
의 이름으로 만들어보자. dat3
row 데이터에 year
를 기준으로 agri_2002
물가지수 변수를 merge하고 price_per_kg
를 agri_2002
로 나눈 뒤 다시 100을 곱해서 할인율이 적용된 가격 변수 price_per_kg_norm
을 만든다.
dat3 <- merge(dat3, ds_rate[,c('year','agri_2002')], by='year', all.x=T)
dat3 <- dat3 %>% mutate(price_per_kg_norm = price_per_kg / agri_2002 * 100)
이제 표준화된 가격이 산지-월별로 어떤 차이와 추세를 보이는지 살펴보자. 이제부터는 price_per_kg_norm
변수의 평균을 구해서 분석용 테이블을 만들 것이다. 아래 code의 두번째줄에서 input_sanji_month[,c(1,14)]
를 기준으로 merge를 하는 이유는 출하량 기준으로 정렬된 상위 9개 산지 리스트와 동일한 리스트를 기준으로 가격 분석 결과를 보여주기 위해서이다. R의 merge()
함수는 key 변수를 기준으로 다시 정렬을 해버리기 때문에 기존에 정렬된 순서가 풀려버리게 되므로 반드시 다시 arrange()
함수를 이용해서 재정렬을 해주는 것이 필요하다.
산지-월별 가격 분포를 보면 경북 지역의 가격이 유난히 높은 것이 특징이다. 주산지인 전남 강원은 물량이 워낙 많아서인지 가격이 낮은 편이다. 나머지 지역에서는 주 출하기가 아닌 시즌에 가격이 높은 편이고 주 출하기에는 전남, 강원과 비슷한 수준인 것을 알 수 있다. 경북 지역의 가격은 이상치에 가깝다고 보여지는데 그 이유는 역시 현장 전문가에게 자문을 구해봐야 알 수 있을 것이다.
price_sanji_month <- dat3 %>% group_by(sanji_wide2,month) %>% summarise(price=mean(price_per_kg_norm,na.rm=T)) %>% spread(month,price,fill=0) %>% ungroup()
price_sanji_month <- merge(input_sanji_month[,c(1,14)],price_sanji_month, by='sanji_wide2',all.x=T) %>% arrange(desc(total))
d8b <- as.matrix(price_sanji_month[1:9,3:14])
hist3D(z = d8b, x=1:9, y=1:12, scale = FALSE, expand = 0.001, bty = "g", phi = 40, theta = 15, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab="전남 강원 경북 결측 충남 경기 전북 경남 충북", ylab="month", zlab='ton', cex.lab=1.1)
sanji_wide2 | total | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
전라남도 | 2182515992 | 376.5938 | 403.4792 | 442.6030 | 467.7518 | 361.5710 | 289.1865 | 385.6415 | 513.8500 | 580.1131 | 460.6588 | 381.3089 | 368.3780 |
강원도 | 2119093096 | 500.4085 | 529.1793 | 623.6193 | 746.3417 | 555.6570 | 324.0513 | 399.6541 | 535.3473 | 573.0784 | 429.6150 | 379.6821 | 442.2901 |
경상북도 | 634346472 | 1609.6488 | 1561.4956 | 2125.1275 | 1658.5790 | 1165.5665 | 819.3502 | 1155.9221 | 1768.1374 | 1606.5413 | 914.5398 | 714.8584 | 1178.0551 |
a | 518390624 | 569.7698 | 591.9062 | 631.4479 | 623.5187 | 540.1769 | 493.1939 | 629.8282 | 710.1707 | 685.6382 | 491.0291 | 404.1323 | 475.7081 |
충청남도 | 461931062 | 801.0355 | 947.1389 | 1057.9322 | 702.0017 | 421.6264 | 515.3874 | 1017.8269 | 1029.8524 | 1190.1227 | 826.5946 | 374.5322 | 464.1745 |
경기도 | 458134852 | 849.0272 | 804.1997 | 861.3972 | 923.9659 | 715.6769 | 558.4003 | 716.2402 | 912.5215 | 856.9505 | 620.5994 | 489.4141 | 766.6097 |
경상남도 | 334699552 | 904.8234 | 876.2486 | 1100.4147 | 958.4609 | 512.6879 | 440.9412 | 812.9839 | 1025.0271 | 907.5656 | 733.8096 | 603.9218 | 579.8242 |
전라북도 | 331451951 | 504.1820 | 550.2661 | 593.0326 | 645.8259 | 455.8704 | 364.0546 | 560.2577 | 677.0288 | 750.1036 | 637.9336 | 366.5394 | 381.5305 |
충청북도 | 298919567 | 718.4751 | 851.8158 | 804.4810 | 896.1747 | 468.3296 | 259.7654 | 458.9072 | 644.5242 | 675.2024 | 364.7118 | 345.3655 | 541.3925 |
대구광역시 | 210520753 | 1268.8092 | 1240.3113 | 1133.5957 | 1075.4642 | 912.3639 | 813.5368 | 977.5638 | 1159.7957 | 1156.5147 | 970.4193 | 829.7693 | 955.3916 |
광주광역시 | 168428579 | 642.8545 | 674.1521 | 659.6610 | 639.5426 | 580.1135 | 530.5672 | 647.7059 | 804.5245 | 792.5176 | 663.4457 | 523.7119 | 493.2712 |
인천광역시 | 142517194 | 618.9005 | 630.5680 | 726.4564 | 731.7475 | 520.3304 | 425.9975 | 528.6958 | 615.8018 | 730.7073 | 592.6983 | 471.9626 | 596.2875 |
서울특별시 | 137867711 | 1565.8875 | 1538.5577 | 1604.0480 | 1495.7623 | 1348.6174 | 1263.0023 | 1401.7384 | 1595.8528 | 1490.0166 | 1392.1797 | 1339.0000 | 1551.4332 |
부산광역시 | 127754651 | 594.1237 | 625.8253 | 710.7610 | 655.2000 | 535.2693 | 557.8892 | 857.6268 | 894.7536 | 887.5558 | 846.1108 | 627.8254 | 550.6496 |
대전광역시 | 113547370 | 500.8301 | 579.1450 | 495.0750 | 532.0761 | 396.4793 | 338.7227 | 457.0373 | 608.2219 | 584.6297 | 402.7012 | 338.6225 | 415.3172 |
울산광역시 | 51199748 | 774.6589 | 772.4953 | 766.4242 | 719.7342 | 535.6027 | 513.1752 | 681.4414 | 830.2075 | 944.9793 | 743.9106 | 701.5051 | 704.4215 |
제주특별자치도 | 29112745 | 758.0132 | 727.1898 | 637.3136 | 583.0888 | 404.2949 | 382.3871 | 519.2920 | 639.3792 | 646.4986 | 608.9487 | 598.1208 | 628.3017 |
중국 | 88102 | 947.3135 | 1074.2799 | 1056.4953 | 989.7500 | 1015.7073 | 1254.9260 | 583.9581 | 1255.9642 | 976.9923 | 794.4534 | 781.5757 | 663.8760 |
미국 | 10086 | 0.0000 | 0.0000 | 0.0000 | 6521.7192 | 1956.5158 | 6521.7192 | 0.0000 | 323.5892 | 0.0000 | 0.0000 | 136.1761 | 218.9149 |
러시아 | 5000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 433.3777 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
기타국 | 630 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 1361.9304 | 1680.7538 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
태국 | 130 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 5077.0331 | 0.0000 | 0.0000 |
.
산지-월 출하량+실질가격
이번에는 산지-월별 조건에서 출하량과 가격을 동시에 볼 수 있는 방법으로 histogram과 선그래프를 동시에 그려보자. ggplot()
함수는 데이터가 wide type이 아닌 long type이어야 group별 그래프 분리가 가능하기 때문에 reshape2
패키지의 ’melt()함수를 이용해서 데이터를 변환여
dat_sanji_month_long으로 저장한다. 비슷하게 가격은
tmp4에 저장한 후
dat_sanji_month_long에 merge 시킨다. 변환과 merge 과정에서
month변수가 factor형으로 변경되어서 다시 numeric형으로 전환해준다. 이제
ggplot()`으로 출하량은 histogram으로, 가격은 y축을 상대적으로 변환하여 선그래프로 그려보자.
산지별 출하기는 3D 그래프에서 보았던 것과 동일하게 나타났다. 가격의 경우 상대적 크기로 표현이 되어서 우측 Y축 범위가 지역별로 다른 것을 볼 수 있다. 2002~2018년 17년간의 평균적인 트렌드에서는 모든 지역에서 1~3월까지는 가격이 오르다 4월부터 감소세를 보이다 6월에 최하점을 찍고 다시 8~9월에 최고치를 찍은 후 11월에 최저점으로 다시 내려오는 추세를 보이는 것을 확인할 수 있다.
dat_sanji_month_long <- melt(input_sanji_month[1:9,-14], id=c('sanji_wide2'), variable.name = 'month',value.name = 'input')
tmp4 <- melt(price_sanji_month[,-2], id=c('sanji_wide2'), variable.name = 'month', value.name = 'price')
dat_sanji_month_long <- merge(dat_sanji_month_long,tmp4, by=c('sanji_wide2','month'),all.x=T)
dat_sanji_month_long$month <- as.numeric(dat_sanji_month_long$month)
ggplot(data=dat_sanji_month_long) + geom_bar(aes(x=month, y=input , fill= sanji_wide2, color=sanji_wide2),stat="identity",position=position_dodge(), colour="black") +
geom_line(aes(x=month, y=price*200000, group= sanji_wide2, color=sanji_wide2), color='blue', size=0.8, alpha=0.4) + scale_y_continuous(sec.axis = sec_axis(~./200000, name = "price")) +
facet_grid(vars(sanji_wide2), scales="free_y")
품종-월 반입량
이번에는 품종-월별 반입량을 살펴보자. sepname
변수는 결측을 포함하여 16개의 품종값을 가지고 있는데 그 중 비중이 크지 않은 생채용 배추, 절임배추, 우거지, 배추뿌리, 배추(수입), 우거지(수입), 배양채 품종은 제외하고 월동배추
, 봄배추
, 여름배추
, 고랭지배추
, 가을배추
, 저장배추
, 쌈배추
, 기타
8개 품종만 고려하였다. 변수명이 품종명이기는 하나 실제로는 봄배추, 여름배추 품종이 다른 것은 아니기 때문에 배추에 대해서는 품종의 의미보다는 출하시기를 의미한다고 볼 수 있다. 그래프를 보면 월동배추는 1~3월, 봄배추는 5,6월, 여름배추/고랭지배추는 7~9월, 가을배추는 10~12월이 출하량이 많다. 주요 출하기에서 제외된 4월은 저장배추가 많이 출하되어 틈새를 매우는 형태를 보인다. 쌈배추는 연중 물량이 많지 않기도 하고 쌈용이기 때문에 본격적인 분석에서는 제외하는 것이 합당해보이는데 문제는 기타로 분류된 품종이다. 물량을 보면 가을배추와 비슷한 주출하기를 보이지만 연중 고르게 분포하고 있어서 이것이 쌈배추와 같이 별도의 용도인지 아니면 특정 산지에서는 품종정보를 기입하지 않아서 기타로 처리하는 것인지는 현장 확인이 필요할 것 같다.
input_spec_month <- dat3 %>% group_by(spename,month) %>% summarise(input=sum(weight,na.rm=T)) %>% spread(month,input,fill=0) %>% ungroup()
input_spec_month <- input_spec_month %>% mutate(total=apply(input_spec_month[,-1],1,sum)) %>% arrange(desc(total))
d9 <- as.matrix(input_spec_month[1:8,2:13])/1000
hist3D(z = d9, x=1:8, y=1:12, scale = FALSE, expand = 0.00001, bty = "g", phi = 50, theta = 20, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab="기타 가을 월동 봄 고냉지 여름 저장 쌈배추", ylab="month", zlab='ton', cex.lab=0.8)
spename | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | total |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
기타 | 134840510.6 | 130463628.3 | 174889935.2 | 185849994.5 | 198106233.9 | 246674631.3 | 266743494.5 | 241738189.6 | 246371499 | 287482618.8 | 500538079.4 | 302371634.8 | 2916070449.5 |
김장(가을)배추 | 34753500.5 | 15656279.0 | 15235205.5 | 12504111.3 | 12014497.8 | 11335506.0 | 41835933.0 | 18314901.0 | 11381242 | 169803711.2 | 450966997.6 | 377020311.3 | 1170822196.2 |
월동배추 | 187656536.8 | 183284542.3 | 190654760.5 | 83968742.4 | 47795811.5 | 38066489.0 | 34075819.0 | 38607622.5 | 50983413 | 72339502.0 | 142129723.4 | 97269777.5 | 1166832740.2 |
봄배추 | 16626786.5 | 16686994.6 | 24276978.1 | 84806717.6 | 303212311.3 | 382224637.8 | 60470349.4 | 25631220.7 | 28704785 | 26032604.9 | 41938629.8 | 34143935.5 | 1044755951.5 |
고냉지배추 | 23453247.0 | 28124948.5 | 22342054.5 | 846627.0 | 1267032.0 | 6057043.0 | 54896070.6 | 210723252.7 | 314108107 | 129081767.5 | 22545746.2 | 2430081.3 | 815875977.4 |
여름배추 | 781158.9 | 692017.4 | 697552.4 | 702652.3 | 1378232.1 | 12583734.7 | 145019489.5 | 129315234.7 | 145537150 | 44758911.9 | 3635634.9 | 1298661.7 | 486400430.4 |
저장배추 | 9239320.5 | 21960065.0 | 106196225.0 | 202117623.5 | 61721436.0 | 10625940.0 | 7519988.0 | 7254231.8 | 9504887 | 7836030.0 | 14411990.0 | 9898112.0 | 468285848.8 |
쌈배추 | 17803986.6 | 16374230.5 | 16615496.3 | 19593801.1 | 18548266.5 | 15988251.4 | 17287966.4 | 15972340.5 | 19101749 | 21793129.9 | 18788284.1 | 15172944.3 | 213040447.1 |
생채용 배추 | 678681.0 | 602868.0 | 690973.5 | 749925.0 | 1241925.0 | 1283710.0 | 1060172.0 | 1203112.5 | 1219593 | 1074459.4 | 2614228.5 | 3874695.0 | 16294342.4 |
절임배추 | 197031.0 | 16488.0 | 25180.0 | 35440.0 | 18100.0 | 44470.0 | 23530.0 | 14270.0 | 12183 | 22530.0 | 8844214.0 | 6218141.0 | 15471577.0 |
우거지 | 1459223.1 | 1250096.0 | 913001.4 | 452369.0 | 330169.4 | 73376.7 | 31513.7 | 31722.4 | 54945 | 135252.9 | 179763.0 | 489821.3 | 5401253.9 |
배추뿌리 | 189939.8 | 148566.9 | 101172.4 | 31967.0 | 35121.0 | 23594.0 | 25780.0 | 14488.0 | 18628 | 33786.0 | 55935.3 | 144905.9 | 823884.3 |
배추(수입) | 1040.0 | 5111.0 | 177974.0 | 81000.0 | 0.0 | 0.0 | 0.0 | 1600.0 | 11450 | 107806.0 | 11655.0 | 60000.0 | 457636.0 |
우거지(수입) | 0.0 | 180.0 | 68.0 | 0.0 | 0.0 | 112.0 | 0.0 | 184.0 | 0 | 444.0 | 400.0 | 200.0 | 1588.0 |
a | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 1380.0 | 0.0 | 1380.0 |
배양채 | 0.0 | 0.0 | 164.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 0.0 | 0.0 | 164.0 |
.
품종-월 실질가격
다음은 품종-월별 표준화 가격 분포를 살펴보자. 기타와 쌈배추의 kg당 가격이 다른 품종 배추에 비해 지나치게 높은 것을 확인할 수 있다. 쌈배추는 별개의 용도로 보고 제외시키는 것이 문제가 안되지만 기타는 전체 물량에서 차지하는 비중이 가장 높기 때문에 제외시키는 것은 바람직하지 않다. 그렇다면 왜 기타 품종만 가격이 높은지는 추가 분석을 통해 확인을 해야 할 것이다. 문제의 두 품종을 제외하면 대체로 8,9월의 가격이 높은 편이고 여름배추의 가격이 1~4월은 높게 나타났으나 여름배추의 주 출하기가 7~9월인 점을 고려하면 의미있는 정보라고 보기는 어렵다.
price_spec_month <- dat3 %>% group_by(spename,month) %>% summarise(price=mean(price_per_kg_norm,na.rm=T)) %>% spread(month,price,fill=0) %>% ungroup()
price_spec_month <- merge(input_spec_month[,c(1,14)],price_spec_month, by='spename',all.x=T) %>% arrange(desc(total))
d9b <- as.matrix(price_spec_month[1:8,3:14])
hist3D(z = d9b, x=1:8, y=1:12, scale = FALSE, expand = 0.003, bty = "g", phi = 50, theta = 20, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab="기타 가을 월동 봄 고냉지 여름 저장 쌈배추", ylab="month", zlab='ton', cex.lab=0.8)
품종-월 출하량+실질가격
품종-월별 조건에서 출하량과 가격을 histogram과 선그래프로 확인해보자. 산지별로 주 출하기가 달랐던 것과 유사하게 품종별로 주출하기가 다른 것을 볼 수 있다. 각 품종별로 해당 계절이 아닌 시기에도 출하량이 어느정도 잡히고 있는 것도 보이는데 품종을 기록하는 것이 산지의 출하조직에서 이루어지는 사람이 하는 일이라고 생각하면 오류의 존재를 인정할 수 있을 것이다. 따라서 기존의 품종 정보는 무시하고 월을 기준으로 새로운 품종 변수를 만드는 것이 더 적절할 수도 있을 것이다. 이는 이후 분석을 하는 과정에서의 결과를 통해서 어떤 방향이 나은지 생각해보자. 가격의 패턴은 산지에서와 유사하게 3, 8, 9월 고점, 6, 11월 저점을 보여주고 있다.
dat_spec_month_long <- melt(input_spec_month[1:8,-14], id=c('spename'), variable.name = 'month',value.name = 'input')
tmp5 <- melt(price_spec_month[,-2], id=c('spename'), variable.name = 'month', value.name = 'price')
dat_spec_month_long <- merge(dat_spec_month_long,tmp5, by=c('spename','month'),all.x=T)
dat_spec_month_long$month <- as.numeric(dat_spec_month_long$month)
ggplot(data=dat_spec_month_long) + geom_bar(aes(x=month, y=input , fill= spename, color=spename),stat="identity",position=position_dodge(), colour="black") +
geom_line(aes(x=month, y=price*200000, group= spename, color=spename), color='blue', size=0.8, alpha=0.4) + scale_y_continuous(sec.axis = sec_axis(~./200000, name = "price")) +
facet_grid(vars(spename), scales="free_y")
품종-산지 출하량
마지막으로 품종과 산지의 출하량 관계를 3D 그래프로 확인해보자. 출력용 가공 데이터는 spename
과 sanji_wide2
변수로 피벗 테이블을 만들고 합계의 내림차순으로 정렬된 표이다. 두 변수 기준으로 해당 데이터를 만드는 함수는 두 변수 정렬 피벗 테이블 함수 Post를 참고하자.
생성된 가공 데이터에서 산지는 상위 9개, 품종은 상위 8개를 이용해서 3D 막대그래프를 그려보면 최대 주산지 전남에서는 가을
, 월동
, 여름
, 배추
, 기타
품종의 주 출하지이다. 두번째 주산지인 강원은 고랭지
, 여름
품종의 주 출하지이다. 가을 배추도 강원도가 2위 출하지이긴 하다. 경북은 봄, 가을 배추 출하량이 많은 편, 충남은 봄배추의 출하량이 많은 편이다. 경기 지역에서 기타 품종이 많은 것은 특이하다. 경기도에서 생산하는 특수 목적의 배추가 기타일 수도 있지 않을까? 하지만 문제의 기타 품종은 주 출하지인 전남, 강원의 출하량이 절대다수인 것을 보았을 때 품종정보가 기록 되지 않은 일반 배추일 가능성이 높아보인다.
input_spec_sanji_wide2 <- total_sort_2d(dat3,spename,sanji_wide2,weight)
d10 <- as.matrix(input_spec_sanji_wide2[1:9,2:9])/1000
hist3D(z = d10, x=1:9, y=1:8, scale = FALSE, expand = 0.00001, bty = "g", phi = 50, theta = 120, col = jet.col(100), alpha = 0.5, border = "black", shade = 0.2, ltheta = 90, space = 0.4, ticktype = "detailed", d = 2, xlab="충북 경남 전북 경기 충남 결측 경북 강원 전남", cex.lab=0.8, ylab="기타 가을 월동 봄 고냉지 여름 저장 쌈배추", zlab='ton')
spename | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | total |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
기타 | 134840510.6 | 130463628.3 | 174889935.2 | 185849994.5 | 198106233.9 | 246674631.3 | 266743494.5 | 241738189.6 | 246371499 | 287482618.8 | 500538079.4 | 302371634.8 | 2916070449.5 |
김장(가을)배추 | 34753500.5 | 15656279.0 | 15235205.5 | 12504111.3 | 12014497.8 | 11335506.0 | 41835933.0 | 18314901.0 | 11381242 | 169803711.2 | 450966997.6 | 377020311.3 | 1170822196.2 |
월동배추 | 187656536.8 | 183284542.3 | 190654760.5 | 83968742.4 | 47795811.5 | 38066489.0 | 34075819.0 | 38607622.5 | 50983413 | 72339502.0 | 142129723.4 | 97269777.5 | 1166832740.2 |
봄배추 | 16626786.5 | 16686994.6 | 24276978.1 | 84806717.6 | 303212311.3 | 382224637.8 | 60470349.4 | 25631220.7 | 28704785 | 26032604.9 | 41938629.8 | 34143935.5 | 1044755951.5 |
고냉지배추 | 23453247.0 | 28124948.5 | 22342054.5 | 846627.0 | 1267032.0 | 6057043.0 | 54896070.6 | 210723252.7 | 314108107 | 129081767.5 | 22545746.2 | 2430081.3 | 815875977.4 |
여름배추 | 781158.9 | 692017.4 | 697552.4 | 702652.3 | 1378232.1 | 12583734.7 | 145019489.5 | 129315234.7 | 145537150 | 44758911.9 | 3635634.9 | 1298661.7 | 486400430.4 |
저장배추 | 9239320.5 | 21960065.0 | 106196225.0 | 202117623.5 | 61721436.0 | 10625940.0 | 7519988.0 | 7254231.8 | 9504887 | 7836030.0 | 14411990.0 | 9898112.0 | 468285848.8 |
쌈배추 | 17803986.6 | 16374230.5 | 16615496.3 | 19593801.1 | 18548266.5 | 15988251.4 | 17287966.4 | 15972340.5 | 19101749 | 21793129.9 | 18788284.1 | 15172944.3 | 213040447.1 |
생채용 배추 | 678681.0 | 602868.0 | 690973.5 | 749925.0 | 1241925.0 | 1283710.0 | 1060172.0 | 1203112.5 | 1219593 | 1074459.4 | 2614228.5 | 3874695.0 | 16294342.4 |
절임배추 | 197031.0 | 16488.0 | 25180.0 | 35440.0 | 18100.0 | 44470.0 | 23530.0 | 14270.0 | 12183 | 22530.0 | 8844214.0 | 6218141.0 | 15471577.0 |
우거지 | 1459223.1 | 1250096.0 | 913001.4 | 452369.0 | 330169.4 | 73376.7 | 31513.7 | 31722.4 | 54945 | 135252.9 | 179763.0 | 489821.3 | 5401253.9 |
배추뿌리 | 189939.8 | 148566.9 | 101172.4 | 31967.0 | 35121.0 | 23594.0 | 25780.0 | 14488.0 | 18628 | 33786.0 | 55935.3 | 144905.9 | 823884.3 |
배추(수입) | 1040.0 | 5111.0 | 177974.0 | 81000.0 | 0.0 | 0.0 | 0.0 | 1600.0 | 11450 | 107806.0 | 11655.0 | 60000.0 | 457636.0 |
우거지(수입) | 0.0 | 180.0 | 68.0 | 0.0 | 0.0 | 112.0 | 0.0 | 184.0 | 0 | 444.0 | 400.0 | 200.0 | 1588.0 |
a | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 1380.0 | 0.0 | 1380.0 |
배양채 | 0.0 | 0.0 | 164.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 0.0 | 0.0 | 164.0 |