PythonのNumpyについての質問です。
異なる要素数の複数の配列を、最大のサイズに合わせてゼロでパディングして、次元の大きな1つの配列に結合したいです。
このような動作を一発で実行するnumpyの関数はありませんか?
Python
1import numpy 2 3# 例えば、以下のような3つの1次元配列を1つの2次元配列に結合したいです。 4a = numpy.array([1, 2, 3, 4]) 5b = numpy.array([1, 2, 3]) 6c = numpy.array([1, 2, 3, 4, 5]) 7 8# 最大サイズの配列に合わせて結合された求めたい配列 9d = numpy.array([ 10 [1, 2, 3, 4, 0], 11 [1, 2, 3, 0, 0], 12 [1, 2, 3, 4, 5], 13]) 14 15# 以下のように動作する関数はありませんか?(架空の関数名の例を示します) 16d = numpy.stack_with_zero_padding([a, b, c]) 17 18# 例えば、以下のように配列を用意して代入すれば実現できますが、Python上の操作を極力避けたいです。 19d = numpy.zeros(shape=(3, 5)) 20d[0, :4] = a 21d[1, :3] = b 22d[2, :5] = c
回答1件
あなたの回答
tips
プレビュー