numpyの - 展開し、リピート

pstatix:

拡大を埋めるために最後の要素を配列「を展開」と繰り返す方法はありますか?

他のポストと拡大とパディングに関する交渉0が、私はパッドとして最後の値を繰り返したいです。

私は配列を持っていると言います。

[[1, 2],
 [3, 4],
 [0, 0]]

そして、私は挿入する必要が[5, 6, 6]交換するために[0, 0]、明らかにnumpyのは、これを許可wouldntは。しかし、私はに拡大/再構築することができます:

[[1, 2, 2],
 [3, 4, 4],
 [5, 6, 6]]

Iは、値の数が、長さが変化してもよいファイルを読んだが、私は、配列が同じ形状である必要があります。これを行う1つの方法は、最初のファイルを読んでから、再度移入し、それを読んで、最大の長さを見つけることが、私は「拡大」と繰り返して埋め戻すことにより、単一のパスでそれを行うことを好むように、ファイルは10ギガバイト+です。

CAL:

あなたが必要とするもののように見えますnumpy.pad使用してedgeモードを。ドキュメントから:

‘edge’
    Pads with the edge values of array.

サンプルコード:

>>> ar = np.array([[1,2], [4,5]])
>>> ar
array([[1, 2],
       [4, 5]])
>>> np.pad(ar, [(0, 0), (0, 4)], mode="edge")
array([[1, 2, 2, 2, 2, 2],
       [4, 5, 5, 5, 5, 5]])

最初の(0、0)は、第2の基本的に「右に左、0~4パディングを追加する」ないしながら、第一軸にパディングを指定しないタプル

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=10327&siteId=1