Я пытаюсь собрать заголовок для графика гистограммы в R. Название, которое я хочу получить, состоит из двух источников: сначала вектор (death.cause), определяющий, er, причину смерти, и второе поле из data.frame, в которое я индексирую, используя список, deathratecols, чтобы получить на поле.main = paste (замените (...), замените (...)) в R_hist_title
> death.cause
> [[1]] [1] "Heart Attack"
>
> [[2]] [1] "Heart Failure"
>
> [[3]] [1] "Pneumonia"
> deathratecols
> [1] 11 17 23
Я хочу, чтобы собрать как название: инфаркт (х-бар = 7.63763), где х-бар является средним значением столбца данных. Я могу заставить две части работать отдельно, как показано ниже.
> main=substitute(x, list(x=death.cause[[i]]))) # gives title "Heart Attack"
> main=substitute(bar(X)==k, list(k=mean(outcome[, deathratecols[i] ], na.rm=TRUE ))) # gives title x-bar=7.63763
Но мои усилия по объединению двух элементов с помощью функции paste() не удались.
? кто-то укажет на ошибку моих путей, пожалуйста,
Примечание: используйте '% f' для форматирования цифр для среднего значения, если необходимо. – Maiasaura
спасибо за ваш ответ, который дал мне стимул узнать о еще одной части R. Я не смог сделать sprintf() работать так, как мне было нужно. Однако для записи я обнаружил, что substitute() можно использовать для сборки строки почти так же, как и для вставки(), хотя и без запятой между аргументами, поэтому «code main = substitute (cod (bar (x) = = y), list (cod = death.cause [[i]], y = round (среднее (результат [, deathratecols [i]], na.rm = TRUE), 2) ' – bobox
... дал мне название Я хотел, то есть CauseOfDeath (xbar = RateColumnMean) Еще раз спасибо за ваше предложение. B – bobox