【发布时间】:2015-08-02 11:33:55
【问题描述】:
我有一个如下所示的列表。现在我正在尝试将列表的每个 data.frame 中的所有行名设置为NULL,以便每个 data.frame 以 1 开头,因为它是行名。但不知何故,它不能正确执行。
我的 lapply 声明有问题,但我不知道是什么。
代码
20function <- function (return.query) {
by.areaSize <- split(return.query, return.query$areaSize, drop = FALSE)
lapply(by.areaSize, FUN = function(x) rownames(x) <- NULL)
return(by.areaSize)
}
我要申请的列表
summary(x.split)
Length Class Mode
0 28 data.frame list
10 28 data.frame list
20 28 data.frame list
30 28 data.frame list
40 28 data.frame list
50 28 data.frame list
60 28 data.frame list
70 28 data.frame list
80 28 data.frame list
90 28 data.frame list
100 28 data.frame list
110 28 data.frame list
120 28 data.frame list
130 28 data.frame list
140 28 data.frame list
150 28 data.frame list
160 28 data.frame list
170 28 data.frame list
180 28 data.frame list
190 28 data.frame list
200 28 data.frame list
210 28 data.frame list
220 28 data.frame list
230 28 data.frame list
250 28 data.frame list
260 28 data.frame list
270 28 data.frame list
280 28 data.frame list
300 28 data.frame list
330 28 data.frame list
在我 lapply 之后,每个 data.frame 中的行名并未按预期以 1 开头。但是它们的索引号分别来自split function。
【问题讨论】:
-
你需要一个返回 (x) 即
lapply(by.areaSize, FUN = function(x) {rownames(x) <- NULL);x })
标签: r