机器学习之numpy和matplotlib学习(十五)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33094993/article/details/74073504

今天来学习矩阵的创建和一些基本运算

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : SundayCoder-俊勇
# @File    : numpy7.py
import numpy as np
# numpy基本学习第七课。
# 学习矩阵创建;
# 学习基本运算;

array=np.arange(12).reshape(3,4)
print array
# array为:
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]
# 之前我们把这样创建的数组也叫作矩阵,实际上numpy中有创建矩阵的官方方法。

# 1、使用mat()函数创建一个矩阵,矩阵的行与行之间用分号隔开,行内的元素之间用空格隔开。
A=np.mat('0 1 2 3; 4 5 6 7; 8 9 10 11')
print A
# 输出结果与之前的方法基本一样:
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]
# 我们还可以使用NumPy数组进行创建:
B=np.mat(array)
print B
# 输出结果与A一样:
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]


# 2、矩阵的转置矩阵。
print A.T
# 输出结果:
# [[ 0  4  8]
#  [ 1  5  9]
#  [ 2  6 10]
#  [ 3  7 11]]

# 3、矩阵的逆矩阵。
print A.I
# 输出结果:
# [[-0.3375     -0.1         0.1375    ]
#  [-0.13333333 -0.03333333  0.06666667]
#  [ 0.07083333  0.03333333 -0.00416667]
#  [ 0.275       0.1        -0.075     ]]

# 4、divide函数在整数和浮点数除法中均只保留整数部分。
a = np.array([2, 6, 5])
b = np.array([1, 2, 3])
print np.divide(a, b)
print np.divide(b, a)
# 运算结果如下:
# [2 3 1]
# [0 0 0]
# 默认情况下,使用/运算符相当于调用divide函数
print a/b
# 运算结果如下:
# [2 3 1]


# 5、true_divide函数与数学中的除法定义更为接近,即返回除法的浮点数结果而不作截断:
print np.true_divide(a, b)
print np.true_divide(b, a)
# 运算结果如下:
# [ 2.          3.          1.66666667]
# [ 0.5         0.33333333  0.6       ]

# 6、floor_divide函数总是返回整数结果,相当于先调用divide函数再调用floor函数。
# floor函数将对浮点数进行向下取整并返回整数:
print  np.floor_divide(a,b)
# 运算结果如下:
# [2 3 1]
# 默认情况下,使用运算符//对应于floor_divide函数。
print a//b
# 运算结果如下:
# [2 3 1]


更新完毕

猜你喜欢

转载自blog.csdn.net/qq_33094993/article/details/74073504
今日推荐