Ошибка зависимости файла .Dll в программном обеспечении UNIDEC после изменения пути к нужному файлу в графическом интерфPython

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

Сообщение Anonymous »


Я хотел проверить ту часть кода программного обеспечения unidec, которая преобразует папки agilent .d в текстовый файл, поэтому я открыл файл agilent.py и изменил путь к нужному файлу после запуска команды, которая показала мне ошибку. ошибка файла BaseTof.dll, несмотря на то, что он существует и загрузил его снова, но все еще показывает ошибку.
Ссылка Github на UNIDEC = https://github.com/michaelmarty/UniDec
вот код, который я запускаю
из импорта копирования deepcopy
import numpy как np
из unidec.UniDecImporter.Agilent.MZFILE импортировать MZFile как mzFile
из unidec.UniDecImporter.Importer import *
из инструментов импорта unidec как ud
из unidec.UniDecImporter.ImportTools import merge_spectra
Когда информация о сканировании msrun вообще заполняется
класс AgilentImporter(Importer):
"""
Импортирует файлы данных Agilent.

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

Note: Agilent scans are 0 indexed, so the first scan is scan 0, not scan 1.
"""
def __init__(self, path, **kwargs):
super().__init__(path, **kwargs)
print("Reading Agilent Data:", path)
self.msrun = mzFile(path)
self.init_scans()

self.cdms_support = False
self.imms_support = False
self.chrom_support = True

def init_scans(self):
self.times = []
self.scans = []

curr_info = self.msrun.scan_info()
for i in curr_info:
self.scans.append(i[2]+1)
self.times.append(i[0])

self.times = np.array(self.times)
self.scans = np.array(self.scans)
self.scan_range = [np.amin(self.scans), np.amax(self.scans)]

def get_all_scans(self):
self.data = []
for s in self.scans:
impdat = np.array(self.msrun.scan(int(s)-1))
try:
impdat = impdat[impdat[:, 0] > 10]
except Exception as e:
print("Error Importing Data, Scan:", s, "Data:", impdat, "Error:", e)
self.data.append(impdat)
return self.data

def get_single_scan(self, scan, threshold=-1):
try:
impdat = np.array(self.msrun.scan(int(scan)-1))
impdat = np.transpose([impdat[:, 0], impdat[:, 1]])
impdat = impdat[impdat[:, 0] > 10]
if threshold >= 0:
impdat = impdat[impdat[:, 1] > threshold]
return impdat
except Exception as e:
print(f"Error in get_single_scan for scan {scan}: {e}")
return None

def get_avg_scan(self, scan_range=None, time_range=None, mzbins=None):
"""
Returns merged 1D MS data from mzML import
:return: merged data
"""
scan_range = self.scan_range_from_inputs(scan_range, time_range)

self.datascans = []
for s in self.scans:
self.datascans.append(self.msrun.scan(int(s-1)))

if scan_range[1] - scan_range[0] > 1:
# noinspection PyUnresolvedReferences
data = np.array(list(self.msrun.average_scan(list(np.array(scan_range)-1), self.datascans)))
else:
impdat = np.array(self.msrun.scan(int(scan_range[0]-1)))
impdat = impdat[impdat[:, 0] > 10]
data = impdat

return data

# noinspection PyArgumentList
def get_tic(self):
try:
xic = self.msrun.xic(filter="Full")
except:
xic = self.msrun.xic()
return xic

def get_polarity(self, scan=1):
self.scan_info = self.msrun.scan_info()
line = self.scan_info[scan]
# previous checking for +
if "Positive" in line:
print("Polarity: Positive")
return "Positive"
# previous checking for -
if "Negative" in line:
print("Polarity: Negative")
return "Negative"
print("Polarity: Unknown")
return None

def get_ms_order(self, scan=1):
scan_info = self.msrun.scan_info()
for line in scan_info:
if scan == int(line[2]):
if "MS1" in line:
return 1
elif "MS2"  in line:
return 2
print("MS Order: Unknown")
return 1

def close(self):
self.msrun.close()
if name == 'main':
время импорта
# path = "Z:\ Группа Share\JGP\DiverseDataExamples\AgilentData\2019_05_15_bsa_ccs_02.d"
path = "C:\Users\suneel\Desktop\converter\4deg_T_17082023.d"
#path = "C:\Data\DataTypeCollection\test_agilent.d"
d = AgilentImporter(path)
print (d.get_all_scans())
и вот какую ошибку я получаю
Чтение данных Agilent: C:\Users\suneel\Desktop\converter\4deg_T_17082023.d
Traceback (последний вызов):
Файл "c:\Users\suneel\Downloads\UniDec-v.8.0.0\UniDec-v.8.0.0\unidec\UniDecImporter\Agilent\AgilentImporter.py", строка 129, в
d = AgilentImporter(path )
Файл "c:\Users\suneel\Downloads\UniDec-v.8.0.0\UniDec-v.8.0.0\unidec\UniDecImporter\Agilent\AgilentImporter.py", строка 20, в initself.msrun = mzFile(путь)
Файл «C:\Users\suneel\AppData\Local\Programs\Python\Python310\lib\site-packages\unidec\UniDecImporter\Agilent\MZFILE.py», строка 57, в init
self.source = MassSpecDataReader()
System.IO.FileNotFoundException: не удалось загрузить файл или сборку «BaseTof.dll» или одна из его зависимостей.

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

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

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

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

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

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

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