在R中添加后缀时排除某些列
我正在尝试向一个数据集中的所有列添加一些后缀(.1),但稍后用于匹配的列除外,我不想更改这些列的名称。 我正在尝试,但它给了我一个错误(“长度不匹配…”):在R中添加后缀时排除某些列,r,R,我正在尝试向一个数据集中的所有列添加一些后缀(.1),但稍后用于匹配的列除外,我不想更改这些列的名称。 我正在尝试,但它给了我一个错误(“长度不匹配…”): colnames(df[,-which(names(df)==c(“调查”、“ID”、“HID”))))您经常犯错误。 首先,从df提取一个子数据帧。然后获取它的colnames。然后改变那些名字。您没有更改原始数据帧的列名,只是更改了子df的列名。当指令结束时,该子df丢失 icol <- which(names(df) %in%
colnames(df[,-which(names(df)==c(“调查”、“ID”、“HID”))))您经常犯错误。
首先,从df
提取一个子数据帧。然后获取它的colnames
。然后改变那些名字。您没有更改原始数据帧的列名,只是更改了子df的列名。当指令结束时,该子df丢失
icol <- which(names(df) %in% c("survey", "ID", "HID"))
colnames(df)[-icol] <- paste(colnames(df)[-icol], "1", sep = ".")
icol谢谢!在%
中提取和使用==
而不是%都是导致问题的原因。
icol <- which(names(df) %in% c("survey", "ID", "HID"))
colnames(df)[-icol] <- paste(colnames(df)[-icol], "1", sep = ".")