如何对同一列中的数据帧列表中的所有数据帧进行排序?(How to sort all dataframes in a list of dataframes on the same column?)

系统教程 行业动态 更新时间:2024-06-14 17:01:31
如何对同一列中的数据帧列表中的所有数据帧进行排序?(How to sort all dataframes in a list of dataframes on the same column?)

我有一个dataframes dataframes_list列表。 举个例子,我把dput(dataframes_list)放在底部。 我想排列列中的所有数据框在列enrichment 。 我可以用一个数据框排序

first_dataframe <- dataframes_list[[1]] sorted_dataframe <- first_dataframe[order(first_dataframe$enrichment),]

我如何为dataframes_list中的每个数据dataframes_list执行此操作?

示例dataframes_list :

list(structure(list(rank = c(1, 2, 3, 4, 5, 6), cmap.name = c("meclocycline", "pimozide", "isocorydine", "alvespimycin", "15-delta prostaglandin J2", "naloxone"), mean = c(-0.471, 0.504, -0.49, 0.193, 0.296, -0.383 ), n = c(4, 4, 4, 12, 15, 6), enrichment = c(-0.869, 0.855, -0.859, 0.539, 0.476, -0.694), p = c("0.00058", "0.00058", "0.00068", "0.00072", "0.00122", "0.00199"), specificity = c("0", "0.0302", "0", "0.069", "0.2961", "0.0155"), percent.non.null = c(100, 100, 100, 50, 60, 83), signature_name = c("day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict")), .Names = c("rank", "cmap.name", "mean", "n", "enrichment", "p", "specificity", "percent.non.null", "signature_name"), row.names = c(NA, 6L), class = "data.frame"), structure(list(rank = c(1, 2, 3, 4, 5, 6), cmap.name = c("trichostatin A", "daunorubicin", "ketotifen", "quipazine", "minoxidil", "ricinine" ), mean = c(-0.319, -0.515, 0.486, 0.476, 0.316, -0.481), n = c(182, 4, 4, 4, 5, 4), enrichment = c(-0.384, -0.883, 0.862, 0.861, 0.812, -0.816), p = c("0", "0.00046", "0.0005", "0.0005", "0.00058", "0.00209"), specificity = c("0.3762", "0.0175", "0.0053", "0.0065", "0", "0.006"), percent.non.null = c(56, 100, 100, 100, 60, 100), signature_name = c("hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict")), .Names = c("rank", "cmap.name", "mean", "n", "enrichment", "p", "specificity", "percent.non.null", "signature_name"), row.names = c(NA, 6L), class = "data.frame"))

I have a list of dataframes dataframes_list. For an example, I put the dput(dataframes_list) at the bottom. I want to sort all dataframes in the list on the column enrichment. I can sort one dataframe with

first_dataframe <- dataframes_list[[1]] sorted_dataframe <- first_dataframe[order(first_dataframe$enrichment),]

How can I do this for every dataframe in dataframes_list?

example dataframes_list:

list(structure(list(rank = c(1, 2, 3, 4, 5, 6), cmap.name = c("meclocycline", "pimozide", "isocorydine", "alvespimycin", "15-delta prostaglandin J2", "naloxone"), mean = c(-0.471, 0.504, -0.49, 0.193, 0.296, -0.383 ), n = c(4, 4, 4, 12, 15, 6), enrichment = c(-0.869, 0.855, -0.859, 0.539, 0.476, -0.694), p = c("0.00058", "0.00058", "0.00068", "0.00072", "0.00122", "0.00199"), specificity = c("0", "0.0302", "0", "0.069", "0.2961", "0.0155"), percent.non.null = c(100, 100, 100, 50, 60, 83), signature_name = c("day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict", "day1_day3__sham3_strict")), .Names = c("rank", "cmap.name", "mean", "n", "enrichment", "p", "specificity", "percent.non.null", "signature_name"), row.names = c(NA, 6L), class = "data.frame"), structure(list(rank = c(1, 2, 3, 4, 5, 6), cmap.name = c("trichostatin A", "daunorubicin", "ketotifen", "quipazine", "minoxidil", "ricinine" ), mean = c(-0.319, -0.515, 0.486, 0.476, 0.316, -0.481), n = c(182, 4, 4, 4, 5, 4), enrichment = c(-0.384, -0.883, 0.862, 0.861, 0.812, -0.816), p = c("0", "0.00046", "0.0005", "0.0005", "0.00058", "0.00209"), specificity = c("0.3762", "0.0175", "0.0053", "0.0065", "0", "0.006"), percent.non.null = c(56, 100, 100, 100, 60, 100), signature_name = c("hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict", "hour4_day1_day3__sham3_strict")), .Names = c("rank", "cmap.name", "mean", "n", "enrichment", "p", "specificity", "percent.non.null", "signature_name"), row.names = c(NA, 6L), class = "data.frame"))

最满意答案

使用lapply :

sorted_dataframes_list <- lapply(dataframes_list, function(df){ df[order(df$enrichment),] })

Use lapply:

sorted_dataframes_list <- lapply(dataframes_list, function(df){ df[order(df$enrichment),] })

更多推荐

本文发布于:2023-04-20 16:07:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/dzcp/aa33efa1a6e6b20a52d306e77cb05762.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据   列表中   sort   column   list

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!