如何在 R 中從資料框列表中提取最後一行?
假設我們有兩個幀,每個幀有 5 列,儲存在 R 中的一個列表中,並且我們想要從每個資料幀中提取最後一行,那麼我們可以使用 lapply 函式。例如,如果我們有一個名為 LIST 的列表,其中包含上面描述的資料幀,那麼我們可以使用命令 lapply(LIST,tail,1) 從每個資料幀中提取最後一行。
示例
考慮下面的資料框列表−
> x1<-rpois(20,5) > x2<-rpois(20,5) > df1<-data.frame(x1,x2) > y1<-rnorm(20) > y2<-rnorm(20) > df2<-data.frame(y1,y2) > z1<-runif(20,2,5) > z2<-runif(20,2,5) > df3<-data.frame(z1,z2) > List<-list(df1,df2,df3) > List
輸出
[[1]] x1 x2 1 6 5 2 6 5 3 1 6 4 3 7 5 3 2 6 1 5 7 2 4 8 4 9 9 3 7 10 6 4 11 3 3 12 7 6 13 5 4 14 6 3 15 3 7 16 6 3 17 6 4 18 6 2 19 2 5 20 4 2 [[2]] y1 y2 1 -0.122804668 -1.6121924 2 0.368791187 -0.1544747 3 0.609177511 -0.1826137 4 -1.203014907 0.2230573 5 0.635002355 -1.8070089 6 1.859925346 -0.7883239 7 -0.031825058 -0.3458682 8 -2.096244574 0.9227411 9 -1.580421379 1.2784456 10 1.110385489 -0.2452274 11 0.336772170 -0.8106806 12 -0.957564919 0.3096939 13 -0.686361808 -0.9769511 14 -1.828680903 -1.3923749 15 -1.455614755 0.6422880 16 1.300948577 1.3421038 17 -0.002059289 0.3392104 18 0.577102561 0.8994493 19 -0.908456903 0.5898572 20 1.085195168 0.5538230 [[3]] z1 z2 1 2.890933 4.918197 2 3.810215 3.869794 3 4.229115 2.709872 4 2.418676 4.464096 5 3.854820 4.876632 6 4.585025 4.080327 7 2.982565 3.604979 8 3.060728 4.523820 9 3.173745 2.203814 10 2.814365 2.806997 11 3.115635 3.032836 12 3.464063 3.498520 13 4.565387 2.021247 14 3.150363 3.273335 15 3.371670 4.497002 16 3.291873 4.102787 17 2.930217 3.962004 18 4.222483 4.428542 19 4.078323 3.199733 20 2.430997 4.328706
從列表中的資料幀中提取最後一行 −
> lapply(List,tail,1)
輸出
[[1]] x1 x2 20 4 2 [[2]] y1 y2 20 1.085195 0.553823 [[3]] z1 z2 20 2.430997 4.328706
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP