Сбой Rpy2 при многократном запуске в одном и том же скрипте PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Сбой Rpy2 при многократном запуске в одном и том же скрипте Python

Сообщение Anonymous »

У меня есть скрипт Python, который я использую с rpy2, однако в моем коде мне нужно неоднократно использовать код R, я делаю это с помощью функции rpy2.robjects().
Я заметил, что при первом запуске Код R работает идеально, без ошибок и сбоев. Однако при входе во второй цикл я получаю следующую ошибку:

Код: Выделить всё

Unable top open index 'my_index'. Please make sure that the correct prefix is specified and you have the permission to read these files. For example, if there are files '/opt/my_index.reads', '/opt/my_index.files' and etc, the index prefix should be specified as '/opt/my_index' without any suffix.
File "/home/lishana/miniconda3/envs/qiime2-new/bin/yamas", line 8, in 
sys.exit(main())
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/yamas/__init__.py", line 123, in main
continue_from(dataset_id,continue_path,data_type, args.verbose, specific_location)
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/yamas/dataset_downloading.py", line 60, in continue_from
visualization_continue(dataset_id,continue_path, data_type, verbose_print, specific_location)
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/yamas/create_visualization.py", line 465, in visualization_continue
metaphlan_extraction(reads_data, dataset_id)
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/yamas/create_visualization.py", line 181, in metaphlan_extraction
pathways(pathways_metaphlan_output, fastq_name, reads_data, "/home/lishana/pathways")
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/yamas/pathways.py", line 250, in pathways
robjects.r(r_code)
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/rpy2/robjects/__init__.py", line 509, in __call__
res, visible = rinterface.evalr_expr_with_visible(   # type: ignore
File "/home/lishana/miniconda3/envs/qiime2-new/lib/python3.8/site-packages/rpy2/rinterface.py", line 192, in evalr_expr_with_visible
raise embedded.RRuntimeError(_rinterface._geterrmessage())
rpy2.rinterface_lib.embedded.RRuntimeError: Error in .stop_quietly() :
Теперь я знаю, что проблема, связанная с разрушением кода R, представлена ​​в начале сообщения об ошибке, однако после повторного запуска сценария он работает и завершается в следующем цикле (у меня есть if оператор, чтобы не запускать код R для того, на чем я его запускаю)
Строка, в которой код разбивается, следующая:

Код: Выделить всё

if (readfile2 != "") {{
align(index = "my_index", readfile1 = readfile1, readfile2 = readfile2, type = "rna", output_file = file.path(folder_path, "aligned_reads.bam"))
}} else {{
align(index = "my_index", readfile1 = readfile1, type = "rna", output_file = file.path(folder_path, "aligned_reads.bam"))
}}
Пара дополнительных примечаний:
  • В коде у меня есть возможность проверить, вызывалась ли уже библиотека , и если это так, то он не будет вызывать его снова, чтобы сэкономить время — ошибка произошла до того, как я это реализовал.
  • Я удаляю выровненный_reads.bam после каждой итерации цикла и сохраняйте его каждый раз в другом месте.
кто-нибудь знает, как это решить?
спасибо!!

Подробнее здесь: https://stackoverflow.com/questions/792 ... hon-script
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»