В настоящее время я работаю с функциональными данными МРТ в R, но мне нужно импортировать их в Python для более быстрого анализа. Как я могу сделать это эффективным способом?
В настоящее время у меня в R список 198135 кадров данных. Все они имеют 5 переменных и 84 наблюдения за связностью между областями мозга. Мне нужно отобразить те же кадры данных 198135 в Python для выполнения там определенного анализа (с той же структурой, что и в R: один объект, который содержит все кадры данных отдельно).
Изначально я пытался экспортировать файл .RDS из R, а затем импортировать его в Python, используя "pyreadr", но я получаю пустые объекты в каждой попытке с помощью функции "pyreadr.read_r ()".
Мой другой метод состоял в том, чтобы сохранить каждый фрейм данных списка R в виде отдельного файла .csv, а затем импортировать их в Python. Таким образом, я мог получить то, что хотел (я пробовал это с 100 кадрами данных только для того, чтобы попробовать код). Проблема этого метода в том, что он крайне неэффективен и медленен.
Я нашел несколько ответов на похожие проблемы, но большинство из них состояло в том, чтобы объединить все кадры данных и загрузить их как уникальный .csv в Python, а это не то решение, которое мне нужно.
Есть ли какой-нибудь более эффективный способ сделать этот процесс, не изменяя структуру данных, о которой я говорил?
Спасибо за вашу помощь!
# This is the code in R for an example
a <- as.data.frame(cbind(c(1:3), c(1:3), c(4:6), c(7:9)))
b <- as.data.frame(cbind(c(11:13), c(21:23), c(64:66), c(77:79)))
c <- as.data.frame(cbind(c(31:33), c(61:63), c(34:36), c(57:59)))
d <- as.data.frame(cbind(c(12:14), c(13:15), c(54:56), c(67:69)))
e <- as.data.frame(cbind(c(31:33), c(51:53), c(54:56), c(37:39)))
somelist_of_df <- list(a,b,c,d,e)
saveRDS(somelist_of_df, "somefile.rds")
## This is the function I used from pyreadr in Python
import pyreadr
results = pyreadr.read_r('/somepath/somefile.rds')