数据帧转码1-0

时间:2016-10-24 12:04:09

标签: r loops dataframe transformation

我想在[0,1]中转换数据帧的某些列。

我有一个这样的数据框:

Col1 Col2 Col3 Col4 Col5
  A   NO  YES   NO  YES
  B  YES   NO   NO  YES 

我希望将其转换为:

Col1 Col2 Col3 Col4 Col5
  A   0     1   0    1
  B   1     0   0    1

转换YES中的1NO中的0

我怎么能用循环来做?我想设置一个循环,因为我有10列......所以它会更快......另一方面,可以使用列的索引([,1:10])?你怎么看?

1 个答案:

答案 0 :(得分:2)

假设您的变量不是因素,您只需执行以下操作:

df[df == 'YES'] <- 1
df[df == 'NO'] <- 0