我正在尋找一種方法將我的數據幀拆分爲多行。將R數據幀拆分爲幾行
我的測試輸入數據看起來像這樣
data <- read.table(text ="group; yr1; yr2; val; col2
a; 1927; 1934; -140; coltest
a; 1953; 1955; -480; coltest
b; 1957; 1958; -280; coltest1
b; 1961; 1965; -1420; coltest1 ", sep=";", header=T,stringsAsFactors = FALSE)
我所尋找的是來計算,每年的價值和它在一排這樣寫出來的方式:
group; yr1; yr2; val; col2
a; 1927; 1928; -20; coltest
a; 1928; 1929; -20; coltest
a; 1929; 1930; -20; coltest
a; 1930; 1931; -20; coltest
a; 1931; 1932; -20; coltest
a; 1932; 1933; -20; coltest
a; 1933; 1934; -20; coltest
a; 1953; 1954; -240; coltest
a; 1954; 1955; -240; coltest
b; 1957; 1958; -280; coltest1
b; 1961; 1962; -355; coltest1
b; 1962; 1963; -355; coltest1
b; 1963; 1964; -355; coltest1
b; 1964; 1965; -355; coltest1
我可以像這樣計算一年中的每個值,但無法將其分割爲單獨的行。
data$new <- data$val/(data$yr2-data$yr1)
謝謝。但我得到一個錯誤'無法找到函數「expandRows」'。我在MacOs X 10.8.5和使用R.3.1.1。我用命令'install.packages(「splitstackshape」)' – nebuloso 2014-12-02 13:33:00
安裝了這個軟件包,我沒有得到它的工作。我運行了splitstacks軟件包版本1.2.0和data.table 1.9.2,並從源代碼重新安裝了這兩個軟件包。 – nebuloso 2014-12-02 13:47:48
尼斯的答案,尤其是與比較(如預期的那樣)(+1) – 2014-12-02 13:53:50