Я работаю над проектом, который предполагает выполнение GSVA с использованием пакета GSVA в R. В частности, я пытаюсь использовать метод анализа обогащения набора генов для одного образца (ssGSEA). Однако я сталкиваюсь с постоянными ошибками, связанными с новым API, представленным в версии Bioconductor 3.18. Сигнатуры функций и их использование изменились, и у меня возникли проблемы с адаптацией моего кода к новым требованиям.
Цель состоит в том, чтобы выполнить GSVA для наборов генов Hallmark с использованием метода ssGSEA с обновленным пакетом GSVA. Данные экспрессии хранятся в объекте ExpressionSet, а наборы генов предоставляются в виде списка.
Сначала я пытался использовать старый стиль API, который напрямую передавал параметры метода в функцию gsva.
gsvaOutH_Hallmark <- gsva(
expr = exprs(eset),
gset.idx.list = h,
method = "ssgsea",
ssgsea.norm = TRUE,
verbose = FALSE
)
Я получил следующую ошибку:
Error in gsva(expr = exprs(eset), gset.idx.list = h, method = "ssgsea", ...) :
Calling gsva(expr=., gset.idx.list=., method=., ...) is defunct; use a method-specific parameter object (see '?gsva').
Следуя документации, я попытался использовать функции конструктора для создания объекта параметра, специфичного для метода.
ssgsea_params <- ssgseaParam(expr = exprs(eset), gset.idx.list = h, ssgsea.norm = TRUE)
Это привело к следующей ошибке:
Error in ssgseaParam(expr = exprs(eset), gset.idx.list = h, ssgsea.norm = TRUE) :
unused arguments (gset.idx.list = h, ssgsea.norm = TRUE)
На основе примеров я попытался создать объект параметра с минимальным количеством аргументов.
ssgsea_params <- ssgseaParam(geneSets = h)
Я получил еще одну ошибку:
Error in h(simpleError(msg, call)) :
error in evaluating the argument 'object' in selecting a method for function 'gsvaAssayNames': argument "exprData" is missing, with no default
Наконец, я попробовал использовать функцию-конструктор без дополнительных аргументов и передать объект параметра функции gsva.
param <- ssgseaParam()
gsvaOutH_Hallmark <- gsva(param, exprs = exprs(eset), gset.idx.list = h, ssgsea.norm = TRUE, verbose = FALSE)
Это также привело к ошибке, сообщающей о неправильном использовании.
Мне нужна помощь в том, как правильно использовать пакет GSVA с новым API для выполнения ssGSEA. В частности, мне нужно понять:
Любые рекомендации или примеры будут с благодарностью!
Используйте правильные названия параметров в ssgseaParam
. Вы используете старые. Они должны быть exprData
вместо expr
, geneSets
вместо gset.idx.list
и т. д.
Обратитесь к документации GSVA .