Здравствуйте, я пытаюсь запустить Docker образа, который я создал из Dockerfile:
FROM python:3
ADD feature.py /
RUN pip install pandas
RUN pip install numpy
CMD ["python", "/feature.py"]
Вот скрипт Python:
import os # I am not sure we are going to do import right here???
import pandas as pd
import numpy as np
import sys
def freesurfer_statistics(address):
df_asseg = []
data = pd.read_csv(address+'/'+'/stats/aseg.stats', sep = '#').loc[79:]
['Unnamed: 0']
patient = pd.DataFrame()
for i in range(79,124):
patient = patient.append(data[i].split())
data = pd.DataFrame(np.array(patient).reshape(45,10))
data.columns = ['Index','SegId','NVoxels','Volume_mm3',\
'StructName','normMean','normStdDev','normMin','normMax','normRange']
df_asseg.append(list(data.NVoxels)+list(data.Volume_mm3)+ list(data.normMean)+list(data.normStdDev)+list(data.normMin)+list(data.normMax)+list(data.normRange))
df_asseg = pd.DataFrame(np.array(df_asseg).reshape(1,315))
df_rh = pd.DataFrame(np.array(df_rh).reshape(1,306))
df_rh.columns = names
csv_file=pd.concat([df_asseg, df_rh, df_lh], axis = 1)
csv_file.to_csv(address+'/morphometry.csv')
freesurfer_statistics(sys.argv[1])
Он находит файл и записывает данныеto morphometry.csv
После сборки Docker я запускаю контейнер:
docker run --rm -v /mnt/data/service/fmriprep/run_forrest/freesurfer/sub-01:/data features:latest
У меня есть ошибка:
Traceback (most recent call last):
File "/feature.py", line 95, in <module>
freesurfer_statistics(sys.argv[1])
IndexError: list index out of range
Я думаю, что я делаю ошибку в Dockerfile, яновичок в этом.Но не могу получить информацию.