[英]How do I overwrite a column of characters in R with 1s and 0s?
我需要将数据的列之一转换为二进制值。 如果有空格,我试图插入0,如果有一个字符串,我试图插入1。
我的数据目前看起来像这样:
Name Code
Bob
Joe f59tuc
Anna
Kylie
Jill hyt618
Ben skt310
我试图将其转换为:
name code
Bob 0
Joe 1
Anna 0
Kylie 0
Jill 1
Ben 1
我尝试了这个if语句,但是得到了错误。 我是R的新手,对if语句,while循环,for循环等有很少的经验 - 所以在代码中可能会有一些我没想到的明显错误。 非常感激任何的帮助。
if (df$code[df$code == ""]) {
df$code[df$code] <- 0
}
else {
df$code[df$code] <- 1
}
只需df$code <- as.numeric(df$code != '')
就足够了。
如果您确实需要使用if,那么
df$code[df$code == ""] <- 0
设置0就足够了,因为df$code == ""
会给你一个bool矢量,这些可以选择你想要分配0的条目。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.