r語言中處理frame資料框,根據某一列進行切片分組,之後對每一組進行排序、挑選等操作。
在下面這個例子中,對於資料框,依據"group"列分為三組,對於每一組,我們依據"value"列進行排序,當出現排序值一樣的時候,再依據"number"進行排序:
> group <- sample(letters[1:3],10,replace=true)
> number <- sample(1:4,10,replace=true)
> value <- sample(c(1.2,2.1,0.5,0.8,1.5),10,replace=true)
> testdata <- data.frame(group,number,value)
> groupdata <- split(testdata, testdata$group)
> groupdata
$a group number value
3 a 4 0.8
4 a 4 0.8
5 a 3 1.2
$b group number value
2 b 3 1.2
6 b 3 2.1
8 b 3 1.2
$c group number value
1 c 1 2.1
7 c 4 1.2
9 c 2 1.5
10 c 3 1.5
> orderdata
$a group number value
3 a 4 0.8
4 a 4 0.8
5 a 3 1.2
$b group number value
2 b 3 1.2
8 b 3 1.2
6 b 3 2.1
$c group number value
7 c 4 1.2
9 c 2 1.5
10 c 3 1.5
1 c 1 2.1
> selectdata
a b c
group factor,1 factor,1 factor,1
number 4 3 2
value 0.8 1.2 1.5
> selectdata
a b c
group factor,1 factor,1 factor,1
number na na 1
value na na 2.1
>
解釋:
在上邊**中 ,
groupdata <- split(testdata, testdata$group) 語句把資料框分片;
python切片的物件 Python切片物件和
python中是否存在某種內部機制,它以不同的方式處理傳遞給 getitem 的引數,並自動將start stop step構造轉換為片?在 這是我的意思class exampleclass object def getitem self,args return args def call self...
Go語言切片
go語言切片 go語言切片是對陣列的抽象 go 陣列的長度不可改變,在特定場景中這樣的集合就不太適用,go中提供了一種靈活,功能強悍的內建型別切片 動態陣列 與陣列相比切片的長度是不固定的,可以追加元素,在追加時可能使切片的容量增大。宣告乙個未指定大小的陣列來定義切片 var identifier ...
go語言 切片
一 概述 low 陣列下標的起點 high 陣列下標的結束點 不包括此點 arr low arr high len 長度 high low cap 容量 max low 二 切片的長度與容量 package main import fmt func main slice arr 0 3 5 fmt....