因为这个for循环的顺序已经让我很烦恼了,所以我必须注册一个账户。我在R中有一个数据框,它有1000行和10列,每个值都在1到3之间。我想重新编码每个条目,使得:1==3,2==2,3==1。我知道有更简单的方法来做到这一点,比如对每一列进行子集操作并硬编码条件,但这并不总是理想的,因为我处理的许多数据集有多达100列。
我想使用嵌套循环来完成这个任务——这是我目前的进展:
for(i in 1:nrow(dat_trans)){
for(j in length(dat_trans)){
if(dat_trans[i,j] == 1){
dat_trans[i,j] <- 3
} else if(dat_trans[i,j] == 2){
dat_trans[i,j] <- 2
} else{
dat_trans[i,j] <- 1
}
}
}
所以我遍历第一列,获取每个数值并根据if / else的条件进行更改,我仍在学习R语言,如果您对我的代码有任何指针,请随意指出。
编辑:代码
2
,那你为什么要将其替换为2
呢? - Benjamin Ye