数组与矩阵的区别 Python

来源:互联网 发布:软件下载引导页源码 编辑:程序博客网 时间:2024/05/16 06:56

      在做乘法的时候,矩阵和数组傻傻分不清楚,频频报错,最后决定还是耐下心来看一下它们之间的区别。记录一下,但是别人可能不会看懂我的逻辑,我是在自己实现机器学习实战中的算法,虽然有代码,但是编程太Low,想自己写练习一下。回归主题吧,其中可能会包含我用到的函数也顺便记录一下吧。

matrix是array的一个特例,它只能是二维,而array可以是多维的。array类型是不能够直接相乘的,它需要调用dot()方法,如下:

value=Sigmod(sum(dot(data[randindex],weights)))

  其中data和weights都是array类型,如果想转换为array类型,直接调用array()

因为我是想要得到一个数值,所有用了sum()方法,sum()方法是求和函数,能够计算出数值,下面是我copy的。

import numpy as np

np.sum([[0,1,2],[2,1,3],axis=1)

结果就是:array([3,6])

c = np.array([[0, 2, 1], [3, 5, 6], [0, 1, 1]])

print c.sum()
print c.sum(axis=0)
print c.sum(axis=1)

结果分别是:19, [3 8 8], [ 3 14  2]

  axis=0, 表示列。

axis=1, 表示行。

然后是矩阵相乘,对于矩阵相乘嘛,我的程序里面没有用到,单独写个例子吧。保证维度满足矩阵相乘的规则就可以啦。


原创粉丝点击