2.2 Python 机器学习库
此章节主要介绍 Python 基本语法。
2.2.1 基础 Python 编程
略。
2.2.2 中级 Python 编程
2.2.2.1 列表推导式
Python 可使用以下语法生成一个列表:
[<expression> for <expression> in <collection>]
例如:
my_list = [x * x for x in range(1, 10)]
还可以加条件:
my_list = [x * x for x in list1 if x % 2 == 0]
还可以同时遍历多个数组:
my_list = [m + n for m in 'ABC' for n in 'XYZ']
2.2.2.2 Lambda 表达式
Python 支持 Lambda 表达式创建匿名函数:
lambda arguments: expression
调用的时候当作函数调用就行了,例如:
my_lambda = lambda x: x + 1
result = my_lambda(1)
注意 Lambda 表达式的参数不能限定类型,内容也只能是一个表达式。
2.2.2.3 NumPy 库
-
生成随机数组:
numpy.random.random(size=<size>)
numpy.random.random_sample(size=<size>) # 等价与上一行Python 小贴士
Python 可以对数组直接进行基本运算,例如,如果想将一个数组中每个元素都加 1,可以这样写:
arr = [1, 2, 3]
new_arr = arr + 1 # 结果 [2, 3, 4]其中 new_arr 是一个新的数组,arr 不会被改变。
-
创建数组和矩阵:
numpy.array([1, 2, 3]) # 数组
numpy.asmatrix([[1, 2], [3, 4]]) # 矩阵其中,矩阵只能是二维数组,而数组可以是任意维度的。
还可以用 arange 创建数组:
numpy.arange(start, stop, step)生成一个从 start 到 stop 的数组,步长为 step。