【问题标题】:Extract the last column from a list of data frames从数据框列表中提取最后一列
【发布时间】:2018-01-09 11:03:31
【问题描述】:

我有一个包含十个不同列数的数据框的列表,我想获得一个包含十个向量的列表。每个向量将是每个数据帧的最后一列。

如果我想从第一个数据框中获取最后一列,我运行:

lapply(list_with_df,function(x) x[,lengths(list_with_df)[1]])

但我为每个数据框获得了相同的列号。

我尝试对十个数据帧进行“循环”,但出现错误。如果有人可以帮助我解决这个问题,我将不胜感激。问候。

【问题讨论】:

  • lapply(list_with_df,function(x) x[,ncol(x)]) 呢?
  • 非常感谢,效果很好。你想让我得到声望吗?

标签: r


【解决方案1】:

您可以通过ncol 询问列数,而不是使用lengths。这应该有效:

lapply(list_with_df,function(x) x[,ncol(x)])

编辑

只是为了澄清一下:每个数据框的列号相同的原因是因为您总是根据lengths向量的第一个元素使用@来选择列号987654325@。总是第一个data.frame的长度

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-14
    • 2022-10-13
    • 1970-01-01
    • 1970-01-01
    • 2018-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多