У меня есть датафрейм с 3 столбцами, каждый из которых является символом.Я хочу использовать этот фрейм данных для создания формул, поэтому мне нужно убедиться, что фрейм данных отформатирован, чтобы я мог вставить их в уравнения.
1-й столбец содержит статистические функции (например, log10, exp).Второй содержит пояснительную переменную.3-й столбец содержит информацию о типе модели, и ее следует использовать, чтобы определить, следует ли применять следующую функцию.
Я хочу отредактировать 2-й столбец так, чтобы он помещал буквы из 1-го столбца в начале строки.Но я бы хотел, чтобы текст во втором столбце был заключен в скобки.И я хотел бы только применить эту функцию к определенным моделям в 3-м столбце, которые содержат определенное слово.Вот некоторые примеры данных:
Function <- c("exp","log10","exp")
Variable <- c("x","y","z")
Model_type <- c("Model_Yes","Model_Yes","Model_No")
Test <- data.frame(Function,Variable,Model_type)
Test[, ] <- lapply(Test[, ], as.character)
Я подумал, основываясь на похожих вопросах, таких как Как использовать цепочку ifelse и grepl? , что мне нужно что-то вроде этого:
Test$Variable <- ifelse((grepl("No", Test$Model_type)),
Test$Variable,
paste(Test$Function,Test$Variable))
Но это не работает для типа модели «Нет», а также не заключает скобки вокруг исходной строки переменной.Вот что я хотел бы получить на выходе.
Test$Variable <- c("exp(x)","log10(y)","z")
Заранее благодарю за любую помощь в этом.