【发布时间】:2021-09-19 19:13:02
【问题描述】:
我在 R 中有一个列表,其中有几个数据帧将时间戳作为一列。我想对所有这些列进行排序。我该怎么做?
【问题讨论】:
-
如果您创建一个小的可重现示例以及预期的输出,这将更容易提供帮助。阅读how to give a reproducible example。
标签: r list dataframe time timestamp
我在 R 中有一个列表,其中有几个数据帧将时间戳作为一列。我想对所有这些列进行排序。我该怎么做?
【问题讨论】:
标签: r list dataframe time timestamp
使用tidyverse - 使用map(来自purrr)和arrange基于“时间戳”列循环遍历list
library(purrr)
library(dplyr)
lst2 <- map(lst1, ~ .x %>%
arrange(timestamp))
【讨论】:
在基础 R
L <- list(data.frame(v1 = 3:1, v2 = 1:3),
data.frame(v1 = 6:4, v2 = 4:6))
# [[1]]
# v1 v2
# 1 3 1
# 2 2 2
# 3 1 3
#
# [[2]]
# v1 v2
# 1 6 4
# 2 5 5
# 3 4 6
lapply(L, function(x) x[order(x$v1), ])
# [[1]]
# v1 v2
# 3 1 3
# 2 2 2
# 1 3 1
#
# [[2]]
# v1 v2
# 3 4 6
# 2 5 5
# 1 6 4
【讨论】: