我知道我们可以使用apply或lapply来执行在R中for循环可以做的事情,如果您有一个dataframe,您可以使用apply (dataframe,2,mean)来计算列的平均值,但是,如果我们有数据列表,那么我需要通过删除第一列并将数据转换为数字来进行以下调整。让我们说,数据的列表是列表,其中LIST[1]是第一个数据。
如何使用列表立即执行上述操作。如何使用lapply对列表中的数据进行操作?
lapply(LIST, function (x) some function)将该操作应用于“不对数据文件进行列表”。以下是没有任何意义的:
lapply(LIST[], function (x) some function) 发布于 2019-10-06 23:21:12
我们可以循环遍历list,通过移除第一列来子集数据集的列,通过该子集循环,转换为numeric,将输出分配给数据集,并返回该数据集。
lapply(LIST, function(x) {x[-1] <- lapply(x[-1], as.numeric); x[-1]})或者另一个选择是
lapply(LIST, function(x) data.frame(lapply(x[-1], as.numeric)))另外,如果需要根据类型进行转换,一个更容易的选项是type.convert,它可以应用于data.frame的
lapply(LIST, type.convert)或者使用tidyverse
library(dplyr)
library(purrr)
map(LIST, ~ .x %>%
transmute_at(-1, as.numeric))https://stackoverflow.com/questions/58261996
复制相似问题