Hướng dẫn how do you make two array combinations in python? - làm cách nào để bạn thực hiện kết hợp hai mảng trong python?

Đối với việc triển khai tinh khiết của sản phẩm Cartesian của các mảng 1D (hoặc danh sách python phẳng), chỉ cần sử dụng meshgrid(), cuộn các trục bằng transpose() và định hình lại cho Ouput mong muốn:

 def cartprod(*arrays):
     N = len(arrays)
     return transpose(meshgrid(*arrays, indexing='ij'), 
                      roll(arange(N + 1), -1)).reshape(-1, N)

Lưu ý Điều này có quy ước về trục cuối cùng thay đổi nhanh nhất ("kiểu C" hoặc "Major hàng").

In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
Out[88]: 
array([[  1,   4, 100,  -5],
       [  1,   4, 100,  -4],
       [  1,   4, 200,  -5],
       [  1,   4, 200,  -4],
       [  1,   4, 300,  -5],
       [  1,   4, 300,  -4],
       [  1,   4, 400,  -5],
       [  1,   4, 400,  -4],
       [  1,   8, 100,  -5],
       [  1,   8, 100,  -4],
       [  1,   8, 200,  -5],
       [  1,   8, 200,  -4],
       [  1,   8, 300,  -5],
       [  1,   8, 300,  -4],
       [  1,   8, 400,  -5],
       [  1,   8, 400,  -4],
       [  2,   4, 100,  -5],
       [  2,   4, 100,  -4],
       [  2,   4, 200,  -5],
       [  2,   4, 200,  -4],
       [  2,   4, 300,  -5],
       [  2,   4, 300,  -4],
       [  2,   4, 400,  -5],
       [  2,   4, 400,  -4],
       [  2,   8, 100,  -5],
       [  2,   8, 100,  -4],
       [  2,   8, 200,  -5],
       [  2,   8, 200,  -4],
       [  2,   8, 300,  -5],
       [  2,   8, 300,  -4],
       [  2,   8, 400,  -5],
       [  2,   8, 400,  -4],
       [  3,   4, 100,  -5],
       [  3,   4, 100,  -4],
       [  3,   4, 200,  -5],
       [  3,   4, 200,  -4],
       [  3,   4, 300,  -5],
       [  3,   4, 300,  -4],
       [  3,   4, 400,  -5],
       [  3,   4, 400,  -4],
       [  3,   8, 100,  -5],
       [  3,   8, 100,  -4],
       [  3,   8, 200,  -5],
       [  3,   8, 200,  -4],
       [  3,   8, 300,  -5],
       [  3,   8, 300,  -4],
       [  3,   8, 400,  -5],
       [  3,   8, 400,  -4]])

Nếu bạn muốn thay đổi trục đầu tiên nhanh nhất ("Kiểu Fortran" hoặc "Cột-Major"), chỉ cần thay đổi tham số order của reshape() như thế này: reshape((-1, N), order='F')

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Cải thiện bài viết

    Lưu bài viết

    Đọcnumpy.meshgrid()“. This function is used to create a rectangular grid out of two given one-dimensional arrays representing the Cartesian indexing or Matrix indexing.

    Syntax:

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    

    Bàn luậnComputing combinations of elements of Two NumPy arrays

    Python3

    Đôi khi chúng ta cần tìm sự kết hợp của các yếu tố của hai hoặc nhiều mảng. Numpy có một chức năng để tính toán sự kết hợp của 2 hoặc nhiều mảng numpy có tên là Numpy.MeshGrid (). Hàm này được sử dụng để tạo ra một lưới hình chữ nhật trong số hai mảng một chiều đã cho đại diện cho việc lập chỉ mục hoặc lập chỉ mục ma trận của Cartesian.

    Ví dụ 1: Kết hợp tính toán các yếu tố của hai mảng Numpy

    import numpy as np

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    9

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5meshgrid()2
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4meshgrid()5

    ____10

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    3
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    5
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    6

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5transpose()6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4transpose()9

    Output:

    Hướng dẫn how do you make two array combinations in python? - làm cách nào để bạn thực hiện kết hợp hai mảng trong python?

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    7
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    0
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    22216array_1‘ and ‘array_2‘ using numpy.meshgrid().T.reshape() 

    meshgrid()6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1 meshgrid()8meshgrid()9
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    3
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7
    Computing combinations of elements of Three NumPy arrays

    Python3

    import numpy as np

    ____10

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    16
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    18
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    7
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    0
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    22

    reshape((-1, N), order='F')0

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2order9
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    22216

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    9

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5import5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4meshgrid()5

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5numpy as np1
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4numpy as np4

    meshgrid()6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1 numpy as np7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5transpose()6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4transpose()9

    Output:

    Hướng dẫn how do you make two array combinations in python? - làm cách nào để bạn thực hiện kết hợp hai mảng trong python?

    Trong ví dụ trên, chúng tôi kết hợp các phần tử của ‘Array_1‘, ‘Array_2‘ và ‘Array_3‘ Sử dụng numpy.meshgrid (). T.Reshape ()array_1‘, ‘array_2‘ and ‘array_3‘ using numpy.meshgrid().T.reshape()

    Ví dụ 3: Kết hợp tính toán các yếu tố của bốn mảng Numpy Computing combinations of elements of Four NumPy arrays

    Python3

    import numpy as np

    ____10

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    16
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    18
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    7
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    0__14
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    0__16

    reshape((-1, N), order='F')0

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    3
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    32
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    34
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    2
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    37
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    39
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    6

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    9

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5import5
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4meshgrid()5

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5numpy as np1
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4numpy as np4

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    61
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    64

    meshgrid()6

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    1
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    67

    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    68
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    69meshgrid()9
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    3
    In [88]: cartprod([1,2,3], [4,8], [100, 200, 300, 400], [-5, -4])
    Out[88]: 
    array([[  1,   4, 100,  -5],
           [  1,   4, 100,  -4],
           [  1,   4, 200,  -5],
           [  1,   4, 200,  -4],
           [  1,   4, 300,  -5],
           [  1,   4, 300,  -4],
           [  1,   4, 400,  -5],
           [  1,   4, 400,  -4],
           [  1,   8, 100,  -5],
           [  1,   8, 100,  -4],
           [  1,   8, 200,  -5],
           [  1,   8, 200,  -4],
           [  1,   8, 300,  -5],
           [  1,   8, 300,  -4],
           [  1,   8, 400,  -5],
           [  1,   8, 400,  -4],
           [  2,   4, 100,  -5],
           [  2,   4, 100,  -4],
           [  2,   4, 200,  -5],
           [  2,   4, 200,  -4],
           [  2,   4, 300,  -5],
           [  2,   4, 300,  -4],
           [  2,   4, 400,  -5],
           [  2,   4, 400,  -4],
           [  2,   8, 100,  -5],
           [  2,   8, 100,  -4],
           [  2,   8, 200,  -5],
           [  2,   8, 200,  -4],
           [  2,   8, 300,  -5],
           [  2,   8, 300,  -4],
           [  2,   8, 400,  -5],
           [  2,   8, 400,  -4],
           [  3,   4, 100,  -5],
           [  3,   4, 100,  -4],
           [  3,   4, 200,  -5],
           [  3,   4, 200,  -4],
           [  3,   4, 300,  -5],
           [  3,   4, 300,  -4],
           [  3,   4, 400,  -5],
           [  3,   4, 400,  -4],
           [  3,   8, 100,  -5],
           [  3,   8, 100,  -4],
           [  3,   8, 200,  -5],
           [  3,   8, 200,  -4],
           [  3,   8, 300,  -5],
           [  3,   8, 300,  -4],
           [  3,   8, 400,  -5],
           [  3,   8, 400,  -4]])
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    0
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    5transpose()6
    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    7

    numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
    
    4transpose()9

    Output:

    Hướng dẫn how do you make two array combinations in python? - làm cách nào để bạn thực hiện kết hợp hai mảng trong python?

    Trong ví dụ trên, chúng tôi kết hợp các phần tử của ‘Array_1‘, ‘Array_2‘, ‘Array_3‘ và ‘Array_4‘ Sử dụng numpy.meshgrid (). T.Reshape ()array_1‘, ‘array_2‘, ‘array_3‘ and ‘array_4‘ using numpy.meshgrid().T.reshape()


    Bạn có thể nhân hai mảng với nhau không?

    Hàm nhân () được sử dụng khi chúng ta muốn tính toán phép nhân của hai mảng.Nó trả về sản phẩm của ARR1 và ARR2, phần tử khôn ngoan.. It returns the product of arr1 and arr2, element-wise.

    Bạn có thể chia hai mảng trong Python không?

    Phân chia là với hai mảng có cùng kích thước (nghĩa là các mảng có cùng số lượng hàng và cột).Nếu hai mảng đầu vào có cùng hình dạng, thì sự phân chia Numpy sẽ phân chia các phần tử của mảng thứ nhất cho các phần tử của mảng thứ hai, theo kiểu yếu tố khôn ngoan. (i.e., arrays with exactly the same number of rows and columns). If the two input arrays have the same shape, then Numpy divide will divide the elements of the first array by the elements of the second array, in an element-wise fashion.

    Bạn có thể kết hợp các mảng numpy?

    Tham gia các mảng numpy tham gia có nghĩa là đặt nội dung của hai hoặc nhiều mảng trong một mảng.Trong SQL, chúng tôi tham gia các bảng dựa trên khóa, trong khi trong Numpy, chúng tôi tham gia các mảng theo trục.Chúng tôi vượt qua một chuỗi các mảng mà chúng tôi muốn tham gia vào hàm concatenate (), cùng với trục.in NumPy we join arrays by axes. We pass a sequence of arrays that we want to join to the concatenate() function, along with the axis.

    Có hai mảng có cùng một python không?

    Để kiểm tra xem hai mảng numpy A và B có bằng nhau không: sử dụng toán tử so sánh (==) để tạo thành một mảng so sánh.Kiểm tra xem tất cả các yếu tố trong mảng so sánh có đúng không.Use a comparison operator (==) to form a comparison array. Check if all the elements in the comparison array are True.