Новый ответ:
Это неожиданное поведение вызвано тем, что текстовый столбец df1, вероятно, factor
, а не character
, для проверки попробуйте class(df1$text)
. Вы можете решить свою проблему, выполнив команду
df1$text <- as.character(df1$text)
или
dataframe2$wordmatch[1] <- as.character(dataframe1$text[1])
Надеюсь, это поможет.
Старый ответ о циклах:
Да, это не должно быть проблемой. Рабочий пример будет:
df = data.frame(nofdelet=c(2,3,4,2))
my_func <- function(i,j)
{
print(paste0('i: ', i, ', j: ', j))
}
for(i in 1:nrow(df))
{
for (j in 1:df$nofdelet[i])
{
my_func(i,j)
}
}
который выводит:
[1] "i: 1, j: 1"
[1] "i: 1, j: 2"
[1] "i: 2, j: 1"
[1] "i: 2, j: 2"
[1] "i: 2, j: 3"
[1] "i: 3, j: 1"
[1] "i: 3, j: 2"
[1] "i: 3, j: 3"
[1] "i: 3, j: 4"
[1] "i: 4, j: 1"
[1] "i: 4, j: 2"
Обратите внимание, что вам не нужно инициализировать переменные цикла i
и j
. Надеюсь, это поможет.