划分矩阵的除了第一个元素之外的所有元素

时间:2014-09-18 03:52:50

标签: python numpy

我想分割列矩阵的所有元素,但第一个。

>>> import numpy as np
>>> t = np.matrix(np.ones((5,1)))
>>> t
matrix([[ 1.],
        [ 1.],
        [ 1.],
        [ 1.],
        [ 1.]])

我的目标是获得一个新的矩阵(比如n),它与t的大小相同,除了t的第一个元素除以数字(比如5)

>>> n
matrix([[1.],
        [0.2],
        [0.2],
        [0.2],
        [0.2]])

我是numpy的新手。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:3)

你可以这样做:

>>> n = t.copy()
>>> n[1:] /= 5
>>> n
matrix([[ 1. ],
        [ 0.2],
        [ 0.2],
        [ 0.2],
        [ 0.2]])

可选地,

>>> np.vstack([t[0], t[1:]/5])
matrix([[ 1. ],
        [ 0.2],
        [ 0.2],
        [ 0.2],
        [ 0.2]])