我想spread
這個數據在下面(僅在這裏顯示的前12行)列'Year',返回'Orders'國家的名字'。然後計算「訂單」的百分比變化爲從2014年起每個「國家或地區名稱」到2015年的R:如何在同一時間傳播,group_by,彙總和變異
CountryName Days pCountry Revenue Orders Year
United Kingdom 0-1 days India 2604.799 13 2014
Norway 8-14 days Australia 5631.123 9 2015
US 31-45 days UAE 970.8324 2 2014
United Kingdom 4-7 days Austria 94.3814 1 2015
Norway 8-14 days Slovenia 939.8392 3 2014
South Korea 46-60 days Germany 1959.4199 15 2014
UK 8-14 days Poland 1394.9096 6. 2015
UK 61-90 days Lithuania -170.8035 -1 2015
US 8-14 days Belize 1687.68 5 2014
Australia 46-60 days Chile 888.72 2. 0 2014
US 15-30 days Turkey 2320.7355 8 2014
Australia 0-1 days Hong Kong 672.1099 2 2015
我可以用較小的測試數據框這項工作,但只能似乎回到無盡的錯誤,如「和沒有意義因子'或'行的重複標識符'與完整的數據。在閱讀dplyr文檔幾小時後,我嘗試了一些放棄的東西。任何人都可以使用此代碼...
data %>%
spread(Year, Orders) %>%
group_by(CountryName) %>%
summarise_all(.funs=c(Sum='sum'), na.rm=TRUE) %>%
mutate(percent_inc=100*((`2014_Sum`-`2015_Sum`)/`2014_Sum`))
預期的輸出將是一個類似於下表。 (注:這些數字是爲了說明,他們沒有手算)
CountryName percent_inc
UK 34.2
US 28.2
Norway 36.1
... ...
編輯
我不得不做出一些編輯變量名稱,請注意。
請提供樣本數據使用'dput'以及預期的結果 – HubertL