Имена столбцов не отображаются при генерации случайных чисел с использованием функции 'rmsn' в пакете R 'sn' - PullRequest
0 голосов
/ 14 января 2020

Используя фрейм данных df, содержащий несколько месячных доходностей акций S & P500, я сгенерировал входные данные, необходимые для многомерной функции случайного нормального распределения rmsn в пакете R sn:

library(moments)
library(sn)
muvec = apply(df, 2, mean)
covmat = cov(df)
skew = apply(df, 2, skewness)
rmsn(100, muvec, covmat, skew)

Однако случайно сгенерированные числа не содержат исходных заголовков столбцов в моих входных векторах (например, «A», «B», «C»). Вместо этого вывод rmsn содержит обобщенные c имена ("V1", "V2", "V3"). Есть ли способ гарантировать, что мои исходные заголовки столбцов будут переданы в вывод?

Output of random number generation

1 Ответ

0 голосов
/ 14 января 2020

Вывод rmsn - это матрица без имен, и я предполагаю, что вы используете as.data.frame для преобразования ее в фрейм данных, который дает имена столбцов по умолчанию / geenri c.

Я думаю, что единственный способ - присвоить имена столбцов из df

out <- as.data.frame(sn::rmsn(100, muvec, covmat, skew))
names(out) <- names(df)
...