菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
353
0

ADNI数据

原创
05/13 14:22
阅读数 90106

之前整理的数据相关内容

数据的模态有

Clinical Data(临床数据)
Genetic(基因数据)
MRI
PET
BIOSPECIMEN(生物样本)

各模态数据的内容、特点

Clinical Data
内容: 招聘、人口统计、体检和认知评估数据。完整的临床数据集可以作为逗号分隔值(CSV)文件批量下载

基因数据
内容: 受试者的基因分型和测序数据,数据格式:CSV,VCF,BAM
基因分型数据:

APOE Genotyping -- CSV
TOMM40 PolyT Variant -- CSV

全基因组测序数据:

WGS (GATK Call) – SNV + Indel -- VCF
WGS (CASAVA Call) – SNV -- VCF
Sequenced alignment data -- BAM(不可直接下载)

存在VCF数据,不过数据量都较大,是以G为单位的
VCF数据完整的表现应为:

Record(CHROM, POS, ID, REF, ALT, QUAL, FILTER, INFO, FORMAT, sample_indexes, samples=None)

其中:

  • CHROM:染色体名称,类型为str
  • POS:位点在染色体上的位置,类型为int
  • ID:一般是突变的rs号,类型为str。如果是‘.’,则为None
  • REF:参考基因组在该位点上的碱基,类型为str
  • ALT:在该位点的测序结果。是_AltRecord类的子类实例的列表。类型为list。_AltRecord类有4个子类,代表了突变的几种类型:如snp,indel,structual variants等。所有的实例都可以进行比较(仅限于相等的比较,没有大于小于之说),部分子类没有实现str方法,也就是说不能转成字符串
  • QUAL:该位点的测序质量,类型为int或float
  • FILTER:过滤信息。将FILTER列按分号分隔形成的字符串列表,类型为list。如果未给出参数则为None
  • INFO:该位点的一些测试指标。将‘=’前的参数作为键,后面的参数作为值,构建成的字典。类型为dict
  • FORMAT:基因型信息。保存vcf的FORMAT列的原始形式,类型为str

现下载了一个较小的文件,数据量为:39.5 M(不知道当时是怎么找到的了),里面的信息以条为单位,其中前十记录表现为:

Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=3, REF=T, ALT=[C])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=41, REF=C, ALT=[T])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=42, REF=T, ALT=[TC])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=55, REF=T, ALT=[C])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=56, REF=A, ALT=[AC])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=57, REF=T, ALT=[C, G])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=64, REF=C, ALT=[T])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=72, REF=T, ALT=[C, G])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=73, REF=A, ALT=[G])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=75, REF=G, ALT=[A])
Record(CHROM=gi|251831106|ref|NC_012920.1|, POS=93, REF=A, ALT=[G])

读取方式

import vcf
import os


vcf_file = "adni_mito_genomes.vcf"
vcf_reader = vcf.Reader(filename=vcf_file)
i = 0
for record in vcf_reader:
    print(record)
    if i == 10:
        break
    i += 1

MRI
内容: 原始、预处理和后处理的图像文件,FMRI和DTI
数据格式: MRI(structural, diffusion weighted imaging, perfusion, and resting state sequences)
可得到的图像数据

图像示例

下载数据(经过处理)示例:
名字: ADNI1_Complete_2Yr_1.5T
格式: NiFTI
大小: 22.5 M
尺寸: 192 * 192 * 160
类型: T1
制造商: SIEMENS
成像信息:

Acquisition Plane=SAGITTAL; Acquisition Type=3D; Coil=HE; Field Strength=1.5 tesla; Flip Angle=8.0 degree; Manufacturer=SIEMENS; Matrix X=192.0 pixels; Matrix Y=192.0 pixels; Matrix Z=160.0 ; Mfg Model=Symphony; Pixel Spacing X=1.25 mm; Pixel Spacing Y=1.25 mm; Pulse Sequence=IR/GR; Slice Thickness=1.2000000476837158 mm; TE=3.609999895095825 ms; TI=1000.0 ms; TR=3000.0 ms; Weighting=T1

使用Mango可直接显示图片,效果如下

名字:ADNI1_Baseling_3T
格式:NiFTI
大小:22.5 M
尺寸: 192 * 192 * 160
制造商: GE MEDICAL SYSTEMS
类型: T1
成像信息:

Acquisition Plane=SAGITTAL; Acquisition Type=3D; Coil=8HRBRAIN; Field Strength=3.0 tesla; Flip Angle=8.0 degree; Manufacturer=GE MEDICAL SYSTEMS; Matrix X=256.0 pixels; Matrix Y=256.0 pixels; Matrix Z=166.0 ; Mfg Model=SIGNA EXCITE; Pixel Spacing X=1.0156199932098389 mm; Pixel Spacing Y=1.0156199932098389 mm; Pulse Sequence=RM; Slice Thickness=1.2000000476837158 mm; TE=2.8399999141693115 ms; TI=900.0 ms; TR=6.616000175476074 ms; Weighting=T1

使用Mango可直接显示图片,效果如下

ADNI中的扫描是在两种不同的特斯拉扫描仪上进行的,即飞利浦医疗系统和西门子
飞利浦医疗系统扫描的EPI序列为144个体积,场强=3.0特斯拉,翻转角=80.0°,TE=30.0ms,TR=3000.0ms,64×65矩阵,6720.0层厚度为3.31mm的静止状态fMRI
用飞利浦医学系统扫描仪进行扩展静息状态fMRI的EPI序列为:200体积,场强=3.0tesla,翻转角=90.0°,TE=30.0ms,TR=3000.0,64×65矩阵,9600.0层厚3.31mm
对于西门子扫描仪,EPI序列是197个体积,场强=3.0特斯拉,翻转角=80.0度,TE=30.0ms,TR=2999.99,448×448矩阵,以及197个3.4mm厚度的切片
(此处显示的信息与下载的经过处理的信息TE不一致)

python代码示例

import skimage.io as io
import nibabel as nib
import numpy as np
import random


nii_file = "1.nii"
img = nib.load(nii_file)
img_arr = img.get_fdata()
img_arr = np.squeeze(img_arr)
#随机选取一张图片
img_arr1 = img_arr[:, :, random.randint(0, img_arr.shape[2])]
# 数据归一化至[0,1]
print(img_arr.shape)
img_arr1 = (img_arr1 - np.min(img_arr)) / (np.max(img_arr) - np.min(img_arr))
io.imshow(img_arr1)
io.show()

注:只能找到T1的图像,T2的未找到

PET
特点:该数据的目标是跟踪’老年痴呆症的恶化和潜在的病理变化
可得到的数据

图像示例

下载的数据:
单个图片大小:3.44 M
格式: NiFTI
尺寸: 91 * 109 * 91
使用Mango可直接显示图片,效果如下

BIOSPECIMEN(生物样本)
内容:血液、尿液和脑脊液(CSF)等生物标本

发表评论

0/200
353 点赞
0 评论
收藏