0
に複雑なdata.frameに条件付きの関数を適用する:私はこのようになり、データフレームのデータフレーム持っているR
> df
Var
1 word_1, word_2, word_3
2 word_1, word_2, word_3, word_4
> dput(df)
structure(list(df = list(structure(list(N = c("word_1", "word_2", "word_3")),
.Names = "N", row.names = c(NA, -3L), class = "data.frame"), structure(list(N
= c("word_1", "word_2", "word_3", "word_4")),
.Names = "N", row.names = c(NA, -4L), class = "data.frame"))), .Names = "Var",
row.names = c(NA, -2L), class = "data.frame")
を、私は、このような言葉が条件と一致した場合、そのデータに関数を適用したいですそれが置き換えられます。私はこのような何かしようとしている:
func_1 <- function(dataset, condition){
require(data.table)
setDT(dataset)[, lapply(.SD, function(x) ifelse(x == condition, "A", x))]
}
df <- lapply(df, func_1, condition = "word_2")
をしかし、私はエラーを取得する:
Error in matrix(unlist(value, recursive = FALSE, use.names = FALSE), nrow =
nr, :
'df' must be of a vector type, was 'NULL'
状態が発生した場所、私は言葉を交換できるようにしたいことを除いて、私もfunc_1
のような多くの機能を必要としますsomewhereたとえば、func_2
は、"_"
を含む単語がある文字、たとえばB
に置き換えられるようなものになります。どんな指導も大歓迎です!感謝:)ここ