df1 <- data.frame(a=c("apple","computer,mouse","mac,pen","light"),b=c(2011,2012,2013,2014))
col1 <- rep(NA,4),df1<- (df1,col1)
df1[i]
の行は、Appleの場合、col1[i]
私は(関数を使用する方法がわからないカラムは、「赤」「APPLE」は、別の列の値=
赤色であるように文字列がある場合s)を使用して文字列に一致させます。
df1 <- data.frame(a=c("apple","computer,mouse","mac,pen","light"),b=c(2011,2012,2013,2014))
col1 <- rep(NA,4),df1<- (df1,col1)
df1[i]
の行は、Appleの場合、col1[i]
私は(関数を使用する方法がわからないカラムは、「赤」「APPLE」は、別の列の値=
赤色であるように文字列がある場合s)を使用して文字列に一致させます。
grep
を使用して 'a'列の 'apple'を検索し、それを使用して 'col1'を更新することができます。
df1$col1[grep("apple", df1$a)] <- "red"
df1
# a b col1
#1 apple 2011 red
#2 computer,mouse 2012 <NA>
#3 mac,pen 2013 <NA>
#4 light 2014 <NA>
私はOPのコード
df1 <- cbind(df1, col1)
私はOPがcbindを使う代わりに間違いを犯したと思いました!しかし、素晴らしい答え、私は好きです:-) – Learner
はOPの入力は、以下の
df1<- structure(list(a = structure(c(1L, 2L, 4L, 3L), .Label = c("apple",
"computer,mouse", "light", "mac,pen"), class = "factor"), b = c(2011,
2012, 2013, 2014), col1 = c(NA, NA, NA, NA)), .Names = c("a",
"b", "col1"), row.names = c(NA, -4L), class = "data.frame")
可能なオプションは以下の
index <- which(df1$a == "apple")
df1$col1[index] <- "red"
> df1
# a b col1
#1 apple 2011 red
#2 computer,mouse 2012 <NA>
#3 mac,pen 2013 <NA>
#4 light 2014 <NA>
であると仮定引き受けます
ここに質問される質問はありません。文を形成することができない単なる言葉の束。そして、地球上の何が 'col1 < - rep(NA、4)、df1 < - (df1、col1)'なのか? –