Pythonで配列をサブ配列に分割する方法


Pythonで配列をサブ配列に分割する方法について説明します。以下のシンプルで簡単な方法といくつかのコード例を提供します。

方法1: スライスを使用する方法 配列を均等なサイズのサブ配列に分割する場合、スライスを使用する方法が便利です。以下のコード例を参考にしてください。

def split_array(arr, size):
    return [arr[i:i+size] for i in range(0, len(arr), size)]
# 使用例
array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
subarrays = split_array(array, 3)
print(subarrays)

このコードでは、split_array関数が与えられた配列を指定されたサイズで分割し、サブ配列のリストを返します。上記の例では、サイズ3で配列が分割され、次のような結果が得られます。

[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]

方法2: NumPyを使用する方法 NumPyを使用すると、より高度な配列操作を行うことができます。以下のコード例では、NumPyのarray_split関数を使用して配列をサブ配列に分割しています。

import numpy as np
def split_array(arr, num):
    return np.array_split(arr, num)
# 使用例
array = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
subarrays = split_array(array, 3)
print(subarrays)

このコードでは、split_array関数が与えられた配列を指定された数のサブ配列に分割し、NumPy配列のリストを返します。上記の例では、3つのサブ配列が生成されます。

[array([1, 2, 3, 4]), array([5, 6, 7]), array([8, 9, 10])]

以上の方法でPythonで配列をサブ配列に分割することができます。適切な方法を選んで、自分のプログラムに組み込んでみてください。