减去数据框列表内的两列

时间:2020-06-09 21:50:28

标签: r list dataframe subtraction subscript

我有一个数据帧列表,其中包含10列数据和一个空列,我想在其中添加“第5列-第10列”。我尝试过:

lapply(GraphData, function(x){ x[,11] <- x[,5] - x[,10]})

GrpahData[,11] <- GraphData[,5] - GraphData[,10]

但是我遇到此错误:

x [,5]:下标超出范围

GraphData [,5]:不正确的维数 分别。

我怀疑问题是某些行的两列都没有值,是否有一种很好的方法告诉代码忽略这些行

An example of the data as requested

任何帮助将不胜感激,谢谢

A part of str(GraphData) AS REQUESTED

2 个答案:

答案 0 :(得分:0)

我们需要返回“ x”,即数据集。在OP的输出中,仅返回分配的列输出

lapply(GraphData, function(x){ x[,11] <- x[,5] - x[,10]; x})

答案 1 :(得分:0)

以为只要有人愿意,我都会更新它,代码让我可以应用代码

lapply(GraphData[1:168], function(x){ x[,11] <- x[,5] - x[,11]; x})

对于所有data.frames,只要我不使用[1:168]就不起作用