我读了一个fMRI图像,在这里我想计算一个特定的测量值。
initial_data = os.path.join(str(subject_path)+'/derivatives/participant/fmriprep/sub-'+str(subject_label)+'/ses-'+str(k)+'/func/sub-'+str(subject_label)+'_ses-'+str(k)+'_task-rest_run-3_space-MNI152NLin6Asym_desc-smoothAROMAnonaggr_bold.nii.gz')
mean_img = MeanImage(in_file=initial_data,dimension="T",nan2zeros=False,out_file=out_file_mean)
mean_img.run()
sd_img = StdImage(in_file=initial_data,dimension="T",nan2zeros=False,out_file=out_file_sd)
sd_img.run()
division = BinaryMaths(in_file=out_file_mean,operand_file=out_file_sd,operation="div",nan2zeros=False,out_file=out_file_dv)
division.run()
tsnr_value_calc = ImageStats(in_file=out_file_dv,op_string="-M")
tsnr_result = tsnr_value_calc.run()
print(tsnr_result)输出
220628-17:34:38,962 nipype.interface INFO:
stdout 2022-06-28T17:34:38.962155:113.157831 最后,我要提取数字(113.157831),并将其保存到数组中。我该怎么做?
使用str()将接口转换为字符串不起作用。打印接口将导致:
print(tsnr_result)
<nipype.interfaces.base.support.InterfaceResult object at 0x7fd550078be0>这是vars的输出,tsnr_results.outputs是我需要的数字。
发布于 2022-06-28 15:50:10
您可以将字符串拆分为用:分隔的块,并获得最后一个元素:
s = "220628-17:34:38,962 nipype.interface INFO: stdout 2022-06-28T17:34:38.962155:113.157831"
s = s.split(":")[-1]
print(s)输出:您可以将其转换为与float()一起浮动
113.157831https://stackoverflow.com/questions/72789574
复制相似问题