Этот код работает как задумано:
my_tbl<-tibble(var1=c("a","a","a"), var2=c("b","b","b"))
string_to_match_list<-list("b")
my_row<-my_tbl[2,]
my_tbl$var2[2]<-match_every_cell_start_and_modify_with_binary(my_tbl, my_row, string_to_match_list)
match_every_cell_start_and_modify_with_binary<-function(my_tbl, my_row, string_to_match_list)
{
match_bool<-any(sapply(my_row, startsWith, unlist(string_to_match_list))) #matches start only of the string by whole string.
if (match_bool)
{
return(1)
} else
{
return(0)
}
}
my_tbl
вывод:
# A tibble: 3 x 2
var1 var2
<chr> <chr>
1 a b
2 a 1
3 a b
Если я удаляю аргумент my_tbl
из функции, match_every_cell_start_and_modify_with_binary
код не работает, но я вижучто внутри функции my_tbl
не используется.
ВОПРОСЫ:
Почему для функции match_every_cell_start_and_modify_with_binary
требуется my_tbl
в качестве аргумента?
Есть ли способ удалить my_tbl
в качестве аргумента функции match_every_cell_start_and_modify_with_binary
и не повлиять на ее функциональность?