我有一个包含十个具有不同列数的数据框的列表,我想获得一个包含十个向量的列表。每个向量将是每个数据帧的最后一列。
如果我想从第一个数据框中获取最后一列,我运行:
lapply(list_with_df,function(x) x[,lengths(list_with_df)[1]])
但是我为每个数据框获得了相同的列号。
我尝试对十个数据帧进行“循环”,但出现错误。如果有人能帮助我解决这个问题,我将不胜感激。问候。
最佳答案
您可以通过ncol
询问列数,而不是使用长度
。这应该有效:
lapply(list_with_df,function(x) x[,ncol(x)])
编辑
仅供澄清:您为每个数据框获得相同的列号的原因是因为您始终根据lengths
的第一个元素选择列号> 使用 lengths(list_with_df)[1]
进行向量。它始终是第一个 data.frame
关于r - 从数据框列表中提取最后一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48166759/