6

したがって、次の形式をとる大きな NumPy 配列があります。

data = [[2456447.64798471, 4, 15.717, 0.007, 5, 17.308, 0.019, 6, 13.965, 0.006],
        [2456447.6482855, 4, 15.768, 0.018, 5, 17.347, 0.024, 6, 14.001, 0.023],
        [2456447.648575, 4, 15.824, 0.02, 5, 17.383, 0.024, 6, 14.055, 0.023]]

次のようなサブ配列を作成したいと思います。

[[4, 15.717, 5, 17.308, 6, 13.965], 
 [4, 15.768, 5, 17.347, 6, 14.001],
 [4, 15.824, 5, 17.383, 6, 14.055]]

基本的に、最初の列を選択してから、4 列目から 3 列ごとに選択したいと考えています。のような方法でこれにアプローチする方法を理解しようとしましたdata[1:6:?]が、ステップスルーして必要な列のみを取得する方法がわかりませんでした。

また、水平方向に拡張する配列に対してスケーラブルにする必要があります。したがって、列の値をハードコーディングしたくありません。

4

2 に答える 2

3

これはトリックを行い、水平方向と垂直方向にスケーリングし、簡単で機能します。

subArray = []
newRow = []
for row in data:
    for i in xrange(0,len(row)):
        if (i % 3 == 0):
            continue
        newRow.append(row[i])
    subArray.append(newRow)
    newRow = []
于 2013-06-28T17:05:54.363 に答える