Идея довольно проста: определить уровни data.frame, извлечь все строки с определенным уровнем и записать их в новый data.frame.
Так что очень плохое решение должно выглядеть следующим образом.
table <- as.data.frame(table)
table$X4[duplicated(table$X4)]
id_list <-levels(factor(table$X4))
id_df <- as.data.frame(id_list)
row_number <- nrow(id_df)
table$a <- grepl(pattern = id_df[1,1], table$X4)
cow1 <- table[table$a == TRUE, ]
table$b <- grepl(pattern = id_df[2,1], table$X4)
cow2 <- table[table$b == TRUE, ]
table$c <- grepl(pattern = id_df[3,1], table$X4)
cow3 <- table[table$c == TRUE, ]
table$d <- grepl(pattern = id_df[4,1], table$X4)
cow4 <- table[table$d == TRUE, ]
Я знаю, что базовая функция должна выглядеть примерно так, чтобы сделать дело и избежать копирования $ вставки кода
for(i in 1:nrow)
{
table$[i] <- grepl(pattern = id_df[i,1], table$X4)
print(table)
}