# 싱글 프로세싱하는 경우
library(plyr)
market_price <- read.csv("C:/Users/Byeongsoo/Documents/R/requisites.csv")
system.time({
a1 <- ddply(market_price, .(A_NAME, M_TYPE_NAME), summarize, mean_price = mean(A_PRICE))
})
## user system elapsed
## 0.06 0.02 0.08
멀티코어 프로세싱을 하기 위한 패키지는 doMC는 아쉽게도 고성능 리눅스 서버를 사용한다는 가정 아래에서 사용 가능하다. 나에게는 리눅스 서버가 없다.. 슬프다.
우리가 바라는 결과를 뽑기 위한 코드다.
ddply(market_price, .(M_TYPE_NAME, A_NAME), summarise, avg = mean(A_PRICE))
## M_TYPE_NAME A_NAME avg
## 1 대형마트 고등어 1000.0
## 2 대형마트 고등어(30cm,국산) 5335.0
## 3 대형마트 고등어(냉동,국산) 2825.0
## 4 대형마트 고등어(냉동,수입산) 1500.0
## 5 대형마트 고등어(생물,국산) 4550.5
## 6 대형마트 냉동참조기(20cm,국산) 824.7
## 7 대형마트 달걀 2472.5
## 8 대형마트 달걀(왕란) 2614.3
## 9 대형마트 달걀(특란) 2130.0
## 10 대형마트 닭고기 6573.5
## 11 대형마트 닭고기(육계) 7922.1
## 12 대형마트 닭고기(중간) 5580.0
## 13 대형마트 동태 990.0
## 14 대형마트 돼지고기(삼겹살) 13358.3
## 15 대형마트 돼지고기(생삼겹살) 15045.0
## 16 대형마트 명태 1207.7
## 17 대형마트 명태(45cm,국산) 0.0
## 18 대형마트 명태(45cm,수입산) 2095.6
## 19 대형마트 명태(냉동,수입산) 2384.6
## 20 대형마트 명태(러시아,냉동) 2376.0
## 21 대형마트 명태(생물,수입산) 476.5
## 22 대형마트 무 1616.4
## 23 대형마트 무(1kg) 1852.5
## 24 대형마트 무(세척무) 2156.0
## 25 대형마트 무(세척무, 중) 1834.3
## 26 대형마트 배 3961.3
## 27 대형마트 배(신고) 5997.0
## 28 대형마트 배(신고),중급(대) 3033.3
## 29 대형마트 배(신고, 600g) 4374.8
## 30 대형마트 배(중품) 3705.3
## 31 대형마트 배(중품),신고 2186.7
## 32 대형마트 배추 2240.9
## 33 대형마트 배추(2.5~3kg) 2470.2
## 34 대형마트 배추(국산) 2745.0
## 35 대형마트 배추(중간) 2272.9
## 36 대형마트 사과 2718.0
## 37 대형마트 사과(부사) 2162.0
## 38 대형마트 사과(부사),중급(중) 1650.0
## 39 대형마트 사과(부사, 300g) 3003.9
## 40 대형마트 사과(중품) 2533.6
## 41 대형마트 상추 1397.0
## 42 대형마트 상추(100g) 1155.5
## 43 대형마트 쇠고기 21720.0
## 44 대형마트 쇠고기(육우,불고기) 23100.0
## 45 대형마트 쇠고기(한우,불고기) 21262.7
## 46 대형마트 쇠고기(한우1등급) 19340.0
## 47 대형마트 쇠고기(한우2등급) 12920.0
## 48 대형마트 애호박 1036.7
## 49 대형마트 양파 3062.2
## 50 대형마트 양파(1.5kg망) 3009.4
## 51 대형마트 양파(작은망) 3008.8
## 52 대형마트 오이 448.2
## 53 대형마트 오이(다다기) 528.7
## 54 대형마트 오징어 2446.7
## 55 대형마트 오징어(냉동) 1548.0
## 56 대형마트 오징어(냉동,국산) 1998.8
## 57 대형마트 오징어(냉동,수입산) 2120.0
## 58 대형마트 오징어(생물,국산) 2369.8
## 59 대형마트 오징어(생물,수입산) 1680.0
## 60 대형마트 조기 6136.0
## 61 대형마트 조기(국산,냉동) 2884.4
## 62 대형마트 조기(국산,생물) 3807.0
## 63 대형마트 조기(냉동,국산) 2104.5
## 64 대형마트 조기(냉동,수입산) 4105.0
## 65 대형마트 조기(생물,국산) 4165.0
## 66 대형마트 조기(생물,수입산) 990.0
## 67 대형마트 조기(중국산,생물) 1990.0
## 68 대형마트 호박 754.4
## 69 대형마트 호박(인큐베이터) 858.2
## 70 전통시장 고등어(30cm,국산) 2666.7
## 71 전통시장 고등어(냉동,국산) 3524.8
## 72 전통시장 고등어(냉동,수입산) 1750.0
## 73 전통시장 고등어(생물,국산) 3269.4
## 74 전통시장 고등어(생물,수입산) 1500.0
## 75 전통시장 달걀 2500.0
## 76 전통시장 달걀(왕란) 2093.6
## 77 전통시장 달걀(특란) 2225.0
## 78 전통시장 닭고기 6058.2
## 79 전통시장 닭고기(육계) 5465.7
## 80 전통시장 동태 4900.0
## 81 전통시장 돼지고기(삼겹살) 12758.6
## 82 전통시장 돼지고기(생삼겹살) 11769.1
## 83 전통시장 명태 1500.0
## 84 전통시장 명태(45cm,수입산) 2872.3
## 85 전통시장 명태(냉동,수입산) 3370.4
## 86 전통시장 명태(러시아,냉동) 2282.0
## 87 전통시장 명태(생물,수입산) 2352.9
## 88 전통시장 무 1397.9
## 89 전통시장 무(1kg) 1415.3
## 90 전통시장 무(세척무) 1311.1
## 91 전통시장 배 2944.4
## 92 전통시장 배(신고) 3545.5
## 93 전통시장 배(신고, 600g) 3099.4
## 94 전통시장 배(중품) 3111.1
## 95 전통시장 배(중품),신고 3750.0
## 96 전통시장 배추 2470.7
## 97 전통시장 배추(2.5~3kg) 2723.5
## 98 전통시장 배추(중간) 2129.4
## 99 전통시장 사과 2651.0
## 100 전통시장 사과(부사) 2459.4
## 101 전통시장 사과(부사, 300g) 2524.4
## 102 전통시장 사과(중품) 2437.5
## 103 전통시장 삼겹살 12500.0
## 104 전통시장 상추 871.1
## 105 전통시장 상추(100g) 686.8
## 106 전통시장 생닭 6000.0
## 107 전통시장 쇠고기(등심) 12466.7
## 108 전통시장 쇠고기(육우,불고기) 17325.0
## 109 전통시장 쇠고기(한우,불고기) 17951.1
## 110 전통시장 쇠고기(한우1등급) 17800.0
## 111 전통시장 쇠고기(한우2등급) 14600.0
## 112 전통시장 애호박 627.9
## 113 전통시장 양파 2233.3
## 114 전통시장 양파(1.5kg망) 2209.4
## 115 전통시장 양파(작은망) 2389.8
## 116 전통시장 오이 379.6
## 117 전통시장 오이(다다기) 378.5
## 118 전통시장 오징어 1660.0
## 119 전통시장 오징어(냉동) 1583.3
## 120 전통시장 오징어(냉동,국산) 2327.7
## 121 전통시장 오징어(생물,국산) 2152.7
## 122 전통시장 조기 2771.4
## 123 전통시장 조기(국산,냉동) 1517.3
## 124 전통시장 조기(국산,생물) 2223.2
## 125 전통시장 조기(냉동,국산) 1840.4
## 126 전통시장 조기(냉동,수입산) 3426.4
## 127 전통시장 조기(생물,국산) 1871.8
## 128 전통시장 조기(중국산,생물) 4500.0
## 129 전통시장 호박 559.2
## 130 전통시장 호박(인큐베이터) 787.8
trans_market_price <- ddply(market_price, .(M_TYPE_NAME, A_NAME), transform,
avg = mean(A_PRICE))
head(trans_market_price)
## P_SEQ M_SEQ M_NAME A_SEQ A_NAME A_UNIT
## 1 301107 22 이마트 여의도점 13 고등어 1마리(30cm)
## 2 322354 74 이마트 왕십리점 316 고등어(30cm,국산) 1마리(30cm)
## 3 323250 56 롯데백화점 316 고등어(30cm,국산) 1마리
## 4 323378 16 현대백화점 미아점 316 고등어(30cm,국산) 1마리
## 5 323442 15 이마트 미아점 316 고등어(30cm,국산) 1마리 (30cm)
## 6 313052 16 현대백화점 미아점 316 고등어(30cm,국산) 1마리
## A_PRICE P_YEAR_MONTH ADD_COL M_TYPE_CODE M_TYPE_NAME M_GU_CODE
## 1 1000 May-12 작은것 2 대형마트 560000
## 2 2800 Jul-12 2마리 5600 2 대형마트 200000
## 3 7000 Jul-12 국내산 2 대형마트 140000
## 4 5000 Jul-12 2 대형마트 290000
## 5 2800 Jul-12 2 대형마트 290000
## 6 6000 Jun-12 2 대형마트 290000
## M_GU_NAME avg
## 1 영등포구 1000
## 2 성동구 5335
## 3 중구 5335
## 4 성북구 5335
## 5 성북구 5335
## 6 성북구 5335
transfrom은 summarise함수와 달리 열을 추가한 data.frame전체를 반환한다.
반면 위에서 봤듯이, summarise는 쪼개는 기준이 되는 인수와 열을 추가한 데이터를 반환한다.