我有一个名为185个数据帧的列表WaFramesNumeric.每个数据帧都有数百列和数千行.我想编辑每个数据框,以便它保留所有数字列以及我指定的任何非数字列.
使用:
for(i in seq_along(WaFramesNumeric)) {
WaFramesNumeric[[i]] <- WaFramesNumeric[[i]][,sapply(WaFramesNumeric[[i]],is.numeric)]
}
Run Code Online (Sandbox Code Playgroud)
成功使每个数据框仅包含其数字列.
我试图用行修改它来添加特定的列.我试过了:
for (i in seq_along(WaFramesNumeric)) {
a <- WaFramesNumeric[[i]]$Device_Name
WaFramesNumeric[[i]] <- WaFramesNumeric[[i]][,sapply(WaFramesNumeric[[i]],is.numeric)]
cbind(WaFramesNumeric[[i]],a)
}
Run Code Online (Sandbox Code Playgroud)
并尝试调用所有整数列的列号以及特定的列,然后基于:
for (i in seq_along(WaFramesNumeric)) {
f <- which(sapply(WaFramesNumeric[[i]],is.numeric))
m <- match("Cost_Center",colnames(WaFramesNumeric[[i]]))
n <- match("Device_Name",colnames(WaFramesNumeric[[i]]))
combine <- c(f,m,n)
WaFramesNumeric[[i]][,i,combine]
}
Run Code Online (Sandbox Code Playgroud)
这些都返回错误,我很难过如何做到这一点.WaFramesNumeric是另一个dataframes(WaFramesNumeric <- WaFramesAll)列表的副本,所以我也尝试添加来自的特定列,WaFramesAll但这不成功.
我感谢您提出的任何建议,如果有任何不清楚的地方我会道歉.