我對R來說比較新。我剛開始學習它,並且給我留下了深刻的印象。我想問一些問題。說我有一個數據幀,例如:按部門分組的數據框中的數據
ISIN sector
12345 Technology
34567 Utilities
45256 Financials
52000 Technology
33662 Financials
我想下來打破我的數據成扇區。例如有多少證券有收益率等等。我怎樣才能按部門分組?有沒有通過這可以在河做的方式
我對R來說比較新。我剛開始學習它,並且給我留下了深刻的印象。我想問一些問題。說我有一個數據幀,例如:按部門分組的數據框中的數據
ISIN sector
12345 Technology
34567 Utilities
45256 Financials
52000 Technology
33662 Financials
我想下來打破我的數據成扇區。例如有多少證券有收益率等等。我怎樣才能按部門分組?有沒有通過這可以在河做的方式
您還可以使用plyr
包按部門彙總數據。
newDF <- ddply(myDF, .(sector), summarise, #some code to create summary variables)
由於您沒有提供reproducable example,它是很難給出一個很好的答案,因爲我們無法看到您的數據的結構。但是,下面是您的代碼如何可能的示例:
# creating a data.frame
myDF <- read.table(text="ISIN sector div.yield
12345 Technology 3
34567 Utilities 4
45256 Financials 1
52000 Technology 5
33662 Financials 2", header = TRUE, strip.white = TRUE)
# summarising the data.frame
newDF <- ddply(myDF, .(sector), summarise, n.yield = as.numeric(length(div.yield)),
av.yield = round(mean(div.yield),2),
ISIN.string = paste(as.character(ISIN), collapse = ",")
)
您可以使用子集上的行條件R數據幀:
FinancialsData <- myDataFrame[myDataFrame$sector == "Utilities", ]
如果你想打破它分成幾個數據幀,一個對於每個扇區,你可以使用split
功能:
splitData <- split(myDataFrame, f = myDataFrame$sector)
這將產生一個列表,其中每個元素是每一個具體部門。
歡迎來到Stack Overflow!你能給我們一個[可重現的例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)? – Jaap