【问题标题】:Apply approxfun in a nested list in R在 R 的嵌套列表中应用 approxfun
【发布时间】:2018-06-23 10:30:32
【问题描述】:

我有一个嵌套列表,如下例所示:

 # Nested list
    df <- list(
  list(
    Mean = seq(0,100, length.out = 1500),
    MVC = seq(0,100, length.out = 1400),
    z = seq(0,700, length.out = 1450)),
  list(
    Mean = seq(0,100, length.out = 1480),
    MVC = seq(0,100, length.out = 1460),
    z = seq(200,900, length.out = 1490)
  )
)

而且我需要在两个列表中插入 ONLY MeanMVC,以便它们的长度相同。在这种情况下,我需要将它们全部插入到最大长度(1500)。

我正在尝试使用

lapply(df, function(x) approxfun(x)(seq(0,100,length.out = newlength)))

其中newlength 等于 1500。但是,这不起作用。

有什么想法吗?

【问题讨论】:

  • 您需要在approxfun 中更加具体。现在你减少了整个 data.frame 的传递。尝试对一个 data.frame 正确执行此操作。将其转换为列表将是微不足道的。

标签: r interpolation


【解决方案1】:

使用 rapply ,因为您的数据是列表列表:

rapply(df, function(x) approxfun(x)(seq(0,100,length.out = newlength)) , how='list')

以上在我的系统上运行良好,由于结果太大而无法粘贴,我无法粘贴。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-12
    • 1970-01-01
    • 2013-05-11
    • 2013-05-12
    • 2015-07-01
    相关资源
    最近更新 更多