影像组学(radiomics)的概念最早由荷兰学者Kumar在2012年提出,是一个新兴前沿科学领域。其含义是指通过计算机断层摄影(CT)、正电子发射断层摄影(PET)或磁共振成像(MRI)等方式获取的医学图像中提取和分析大量高通量的定量图像特征,从而产生非常大的潜在对象领域。相较于传统影像学而言,影像组学是一种多学科交叉、多种影像技术相互结合的技术。
print("hello") #打印出来;单双引号作用一致。
2.1 不可乱用缩进对齐方式
2.2 # 后文字表示注释,不会被运行
2.3python可用分号;
a = "hello"
print(a)
# 简化打印的代称
4.1数值型:整数型(int) 和 浮点型(float,即小数)
type(10) #结果为int
type(10.0) #结果为float
# type函数功能为查看数据的类型
4.2字符串(str)
type("aaa") #结果为str
type("10") #结果为str
4.3 布尔型(bool)
type(Ture)
type(False)
# 结果为bool
5.1数值的基本运算和比较
运算/比较 | 意义 |
---|---|
a+b | a加b |
a-b | a减b |
a*b | a乘b |
a/b | a除以b |
a// b | a除以b后取整 |
a%b | a除以b后取余 |
a""b | a的b次方 |
a==b | 如果a等于b,返回True,否则返回False |
a != b | 如果a不等于b,返回True,否则返回False |
a<b | 如果a小于b,返回True,否则返回False |
a<=b | 如果a小于或等于b,返回True,否则返回False |
a>b | 如果a大于b,返回True,否则返回False |
a is b | 如果a和b是同一个Python对象,返回True,否则返回False★ |
a is not b | 如果a和b不是同一个Python对象,返回True,否则返回False☆ |
a>=b | 如果a大于或等于b,返回True,否则返回False |
5.2 科学运算
abs(a) a的绝对值
abs(-10) # 结果为10
max(n1,n2,..) n1、n2最大值
max(1,2,3,4,5) #结果为5
min(n1,n2,..) n1、n2最小值
max(1,2,3,4,5) #结果为1
round(x[n])四舍五入,返回的小数点后n位
round(0.123244) #结果为0
round(0.123244,0) #结果为0.0
round(0.123244,1) #结果为0.1
round(0.123244,3) #结果为0.123
5.3 利用math库的科学计算
计算 | 意义 |
---|---|
fabs(x) | x的绝对值,返回对象类型是浮点数 |
ceil(x) | 向上取整 |
floor(x) | 向下取整 |
exp(x) | e的x次幂,e是自然底数 |
sqrt(x) | x的平方根 |
log10(x) | 以10为基数的x的对数 |
log(x,y) | 以y为基数的x的对数 |
power(x,y) | x的y次方 |
import math # 导入math库
print(math.fabs(1.8)) #结果为1.8
print(math.ceil(1.8)) #结果为2
print(math.floor(1.8)) #结果为1
5.4逻辑运算(and,or,not)
False and False #结果为False
False and Ture #结果为False
False or Ture 结果为Ture
not False #结果为Ture
5.5 数值型与布尔型对应关系
1.0 == Ture # 结果为Ture
0 == False # 结果为Ture
#固定搭配,其余都是False
5.6 对is的理解
1 is Ture #结果为False,is表示的是完全相等,但1不完全等于Ture
1 is 1.0 #结果为False,同理
5.7 字符串的操作
#①只可以 +或*,不可以-或/
aa = "cdde"
bb = "hkkl"
print(aa + bb) #结果为ccdehkkl
print(aa * 3) #结果为ccdeccdeccde
#②取
e = "asdfg"
e[0] #结果为aa,因为python默认是从0开始数的
e[1:3] #结果为aa,因为python默认为左闭右开
5.8 类型转换
#①
ss = "3.1415" #s是字符串型(str)
ss_float = float(s) # 变成了浮点型(float)
ss_int = int(float(ss)) # ss是不可以直接转换成整数型(int),要先转换成浮点型(float)
#②看bool型
bool(ss)
6.1判断语句
一个if可以单独使用
一个if、一个或多个elif可以连用
一个if、一个或多个elif和一个else可连用
一个if和else可连用
aa = 5
bb = 3
if aa < bb:
print("aa < bb") # s缩入了4格,每个运行框内的空格都必须一致
elif aa == bb:
print("aa == bb")
else: # 否则打印出此
print("aa > bb")
# 此标点符号一定为英文输入法的
6.2 range函数
range函数返回一个迭代器,该迭代器生成一个等差整数序列
range(10) #答案:range(0,10)
list(range(10)) #答案:0 1 2 3 4 5 6 7 8 9
list(range(0,10,2)) #答案:0 2 4 6 8
# 此时一定要写上区间
6.3 For循环
# 一、
for i in range(5):
if i % 2 == 0:
continue #跳过
print(i)
# 无结果
# 二、
for i in range(4):
for j in range(5,9):
if j == 6:
break #跳出、中断
print(i)
# 循环后面要加 :
6.4 while 循环
x = 10
while x > 0:
print(x)
x = x-2
if x < 5:
break
featureList = ["ccc","ddd","eee","fff"] #设置列表,括号内为字符串元素
7.1 增加和移除元素
#一、使用append方法,在列表尾部增加元素
featureList.append("aaa")
print(featureList) # 结果为"ccc","ddd","eee","fff","aaa"
#二、使用insert方法,将元素插入指定的位置
featureList.insert(0,"bbb")#加到首位
print(featureList) #结果为"bbb","ccc","ddd","eee","fff","aaa"
#三、pop方法移除特定位置元素,返回值为被删除的元素
feature_pop = featureList.pop(2)
print(feature_pop) #结果为"ddd"
print(featureList) #结果为bbb","ccc","eee","fff","aaa"
#四、remove方法删除第一个符合要求的元素
featureList.remove("bbb")
print(featureList) # 结果为"ccc","eee","fff","aaa"
#五、使用in检查元素是否在列表中
"bbb" in featureList
#结果为False
7.2 列表连接
#方法一
list_aa = ["c","d","e"]
list_bb = ["z","f","g"]
list_m = list_aa + list_bb
print(list_m)
# 结果为['c', 'd', 'e', 'z', 'f', 'g']
#方法二extend函数
list_aa.extend(list_aa)
print(list_aa)
7.3 选择和切片
print(list_aa[0]) #出第一位元素
print(list_aa[1:3]) #取出区间,左开右闭
print(list_aa[-1]) #取出最后一位
print(list_aa[2:]) #从2位开始取,包括2位
print(list_aa[:3]) # 从0位开始至2位,不包括3
print(list_aa[-3:-1]) #从最后一位开始取至-3位,不包括最后一位,包括-3位
print(list_aa[::2]) #从头开始隔一位取
print(list_aa[::-1]) # 从最后开始取每一个
7.4 排序
# 一、按字母顺序sort函数
list_cc = ["aaa","abcd","bbb","accc"]
list_cc.sort()
print(list_cc)
#结果为["aaa","abcd","accc,"bbb"],
#首先按首字母,若相同则按下一个字母,以此类推
#按字母数量排序
list_cc.sort(ket = len)
print(list_cc)
字典是长度可变,内容可修改的键(key)值(value)对集合
#一、构建字典
dict_aa = {"name":"liu","age":20,"gender":"male"}
#二、查字典
dict_aa["age"] #结果为20
#三、插入元素
dict_aa["language"] = "Chinesse"
print(dict_aa)
#四、修改元素
dict_aa["gnder"] = "female"
print(dict_aa)
#五、删除元素
del dict_aa["age"]
print()
#或者
dict_aa.pop("gender")
print(dict_aa)
#六、keys 和 value 查找
dict_aa.keys() #结果为dict_aa.keys(["name","language"])
dict_aa.values() #结果为dict_aa.values(["liu","Chinese"])
#七、字典合并(多个字典合并成一个)
dict_aa.update({"ID":123})
print(dict_aa)