跳到主要内容

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。

2.2.2.4 Pandas 库