R语言如何为列设置名称?循环筛选输出三列命名为[,1]等需求求助
R语言实现指定列名输出的方案
最优方案(无需循环,效率更高)
直接按条件筛选目标行后设置列名,不会修改原始数据:
- 第一步:筛选满足p值大于0.05的所有行,保留二维结构
代码:# drop=FALSE可避免筛选结果仅1行时转为一维向量 sub_Rp <- Rp[p_values_SHtestt > 0.05, , drop = FALSE] - 第二步:设置目标列名
代码:colnames(sub_Rp) <- c("[,1]", "[,2]", "[,3]") - 第三步:打印结果
代码:print(sub_Rp)
兼容原有循环的方案
如果你需要保留原来的for循环打印逻辑,可直接为原始数据临时设置列名:
# 临时设置列名,不影响后续对Rp的其他运算 colnames(Rp) <- c("[,1]", "[,2]", "[,3]") # 运行原有循环代码即可输出带指定列名的结果 for(i in 1:200){(if (p_values_SHtestt[i]>0.05){print(Rp[i,])})}
内容的提问来源于stack exchange,提问作者Statistical scientist
相关产品推荐
相关产品推荐

