有没有办法循环多个数据帧以删除相同的列?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法循环多个数据帧以删除相同的列?相关的知识,希望对你有一定的参考价值。

我在R中有不同的数据框,我想放弃相同的四列,在整个循环中迭代所有这些的过程。

当我使用子集并在单个数据框上选择时,代码行工作正常。然而,一旦我尝试某种迭代,我总会遇到某种错误。下面,我做了几次尝试

假设我有两个数据框架ABfor,我想删除列sexagecitizenunit

当我使用子集并选择单个数据帧时很好:

A=subset(A, select = -c(sex,age,citizen,unit))

然后我尝试创建两个数据框的列表,并使用for循环如下:

df.list <- list(A, B)

for(i in 1:2) {

  df.list<- subset(i, select = -c(sex,age,citizen,unit))

}

但我收到错误信息:

subset.default出错:缺少参数“subset”,没有默认值

答案

我不确定,因为我现在无法访问它,但不应该像这样:

for (i in 1:2) {
    df.list <- subset(df.list[i], select = ...)
}

因为您不想使用第一个参数= 1来调用子集,而是使用第一个参数=列表中的第i个元素。

以上是关于有没有办法循环多个数据帧以删除相同的列?的主要内容,如果未能解决你的问题,请参考以下文章

如何从内存中删除多个熊猫(python)数据帧以节省 RAM?

有没有办法使用相同的布局动态创建片段并向它们显示数据?

PDO - 对多个 foreach 循环使用相同的查询

在具有循环或 lambda 的多个数据帧中添加具有相同字符串值的列的更有效方法?

有没有办法删除具有相同进程名称的条目?

java 操作Excel,循环每一行的列,为啥列数不相同呢。