homo_pos1 = np.array([1, 2, 3, 1])
print homo_pos1.dot(homo_pos1) # 向量的点积:15
print(np.linalg.norm(homo_pos1)) # 向量的模
print(homo_pos1 / np.linalg.norm(homo_pos1)) # 向量的规范化(单位化)
print "shape 1= ", homo_pos1.shape # shape 1= (4L,)
homo_pos2 = np.array([
[1.0],
[2.0],
[3.0],
[1.0]
])
print "shape 2= ", homo_pos2.shape # shape 2= (4L, 1L)
test_mat = np.array([
[1,6.7,3,8],
[3, 6, 2, 5],
[11, 7, 3, 8],
[1.3, 6.1, 7, 3],
])
print np.dot(test_mat, homo_pos1)
# 输出: [ 31.4 26. 42. 37.5]
print np.dot(test_mat, homo_pos2)
"""输出:
[[31.4]
[26.]
[42.]
[37.5]]
"""
"""
numpy中向量表示及运算
推荐用np.array([1, 2, 3, 1])这种形式
"""
# 不同的构造方式
Vpalm_obj = np.array([[0, 1, 0, 0, 0, 0]]).T
print "Vpalm_obj = ", Vpalm_obj
Vpalm_obj_1 = np.array([0, 1, 0, 0, 0, 0]).T
print "Vpalm_obj_1 = ", Vpalm_obj_1
"""输出
Vpalm_obj = [[0]
[1]
[0]
[0]
[0]
[0]]
Vpalm_obj_1 = [0 1 0 0 0 0]
"""