机器学习实战(一) 环境及入门

本文主要记录《机器学习实战》中的理论知识拓展和实践问题中解决方案的总结

大纲

  • Python基础入门
    • 容器类型
    • 控制结构
    • NumPy快速入门

Python基础入门

1.容器类型

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//1.List列表:存放有序对象、可以容纳任何数据类型的容器
list=[]
list.append(1)
list.append('nice hat')

//2.Dictionary字典:存放无序键值对的容器
dic={}
dic['dog']='luwanzhi'
dic[1]=42

//3.Set集合:由不重复数字组成的合集
//集合由列表生成
list=[1,2,2,2,4,5,5]
SA=set(list)
SA >> [1,2,4,5]

//并集用 | 表示 交集用 & 表示
SA | SB
SA & SC

2.控制结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//1.IF
if a<2:
b=3
elif a==2:
b=4
else:
b=5

//2.FOR
//遍历列表|集合
for item in list:
print ltem
//遍历字典
for key in dic:
print key,dic[key]

//列表推导式
list=[1,2,3,4]
L1=[item*4 for item in list]
// L1 = [4,8,12,16]
L2=[item*4 for item in list if item>10]
// L2 = [12,16]

3.NumPy快速入门
NumPy库提供大量矩阵处理函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//NumPy数组
from numpy import array
a1=array((1,1,1))
a2=array((1,2,3))
a1+a2 //[2,3,4]
a1*2 //[2,2,2]
a2**2 //[1,4,9]
a2[2] //3

//NumPy矩阵
from numpy import matrix
m1=matrix([1,2,3])
m2=matrix([2,3,4])
m1*m2.T //矩阵相乘
shape(m1) //矩阵大小
multiply(m1,m2) //对应元素相乘
m1.sort() //矩阵排序
m1.mean() //矩阵均值

m3=matrix([[1,2,3],[4,5,6]]) //多维矩阵
shape(m3) //(2,3)
m3[1,:] //查看第1行元素 [4,5,6]