Мне нужно иметь возможность заполнить выражение значениями неизвестного числа переменных. Форма выражения зависит от количества переменных.
Пример:
Выражение1 : "курсив (у) == а * курсив (х) * б"
становится : " y = 1,2 x + 4,3"
Выражение2 : "курсив (y) == a * курсив (x) * b ~ c"
станет : " y = 1,2 x + 4,3 -5,3"
В настоящее время я использую функцию substitute , но она не работает вместе с функцией expression
:
substitute(expression("italic(y)==a*italic(x)*b"),list(a=1.23,b=2.3))
Мое выражение должно расти по мере увеличения числа переменных (то есть длины списка). Итак, следующим шагом будет добавление переменной c :
substitute(expression("space1*italic(y)==a*italic(x)*b*c"),list(a=1.23,b=2.3,c=3.2))
Но мне нужно изменить выражение в коде без какого-либо ручного вмешательства, и эти коды не читают значения переменных из списка, если я не изменяю его на это (в котором выражение больше не может быть расширено, поскольку оно не является строкой ):
substitute(italic(y)==a*italic(x)*b*c,list(a=1.23,b=2.3,c=3.2))
Как я могу это сделать?