Включение переменных в вызов выражения в R - PullRequest
1 голос
/ 27 июля 2010

Мне было интересно, можно ли было включить переменные при использовании expression в R.

Например, я хотел бы сделать что-то вроде этого:

par(mfrow=c(2,3))
for (i in 1:6)
    {
    plot(x, p1-i*p2, main=expression(Phi[1] - i * Phi[2]))
    }

Но это не работает, так как печатает & Phi; 1 - i & Phi; 2 (т.е. он не заменяет i на 1, 2, ... 6

Ответы [ 2 ]

7 голосов
/ 27 июля 2010

Использовать замену:

> substitute(Phi[1] - i* Phi[2], list(i = i))
Phi[1] - 3 * Phi[2]
0 голосов
/ 27 июля 2010

Похоже, он использует переменные. Я установил x = 1 и использовал следующее.

> p1 = 100
> p2 = 10
> for (i in 1:6)
+     {
+     plot(x, p1-i*p2, main=expression(Phi[1] - i * Phi[2]))
+     }
> 

Это дало мне 6 графиков для Φ1 - iΦ2, каждый из которых показывает значение Y по убыванию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...