Rumah >pembangunan bahagian belakang >Tutorial Python >Lingkaran ajaib NumPy: mendedahkan teknologi hitam pemprosesan data

Lingkaran ajaib NumPy: mendedahkan teknologi hitam pemprosesan data

WBOY
WBOYke hadapan
2024-03-30 10:41:111110semak imbas

NumPy 的魔法阵:揭秘数据处理的黑科技

Definisi bulatan ajaib

Matriks ajaib ialah matriks n x n segi empat sama di mana jumlah nombor dalam setiap baris, lajur dan pepenjuru adalah sama. Pemalar ini dipanggil jumlah ajaib. Contohnya, bulatan ajaib 3 x 3 kelihatan seperti ini:

816
357
492

Jumlah ajaib bulatan ajaib ini ialah 15, dan jumlah nombor dalam baris, lajur dan pepenjurunya ialah 15.

Buat tatasusunan ajaib dalam NumPy

NumPy menyediakan fungsi kemudahan yang dipanggil numpy.mgrid yang boleh digunakan untuk mencipta bulatan ajaib. Fungsi ini mencipta grid nombor sekata yang kemudiannya boleh dimanipulasi untuk menghasilkan bulatan ajaib.

Berikut ialah kod untuk mencipta bulatan ajaib 3 x 3 menggunakan NumPy:

import numpy as np

# 创建一个 3 x 3 的网格,数字范围为 1-9
grid = np.mgrid[1:4, 1:4]

# 计算网格每个位置的距离矩阵
dists = np.abs(grid[0] - grid[1])

# 创建一个布尔掩码,将与对角线相距 1 的位置标记为 True
mask = (dists == 1) | np.eye(3, dtype=bool)

# 根据掩码对网格进行索引,得到魔法阵
magic_square = grid[mask]

Menjalankan kod ini akan menghasilkan bulatan ajaib berikut:

816
357
492

Sifat matematik bulatan ajaib

Lingkaran ajaib mempunyai banyak sifat matematik yang menarik, termasuk:

  • Jumlah nombor dalam baris, lajur dan pepenjuru adalah sama.
  • Jumlah ajaib bersamaan dengan n(n² + 1)/2, dengan n ialah susunan bulatan ajaib.
  • Bulatan ajaib boleh diterbalikkan atau diputar secara simetri dalam mana-mana baris, lajur atau pepenjuru.
  • Lingkaran ajaib boleh dibuat menggunakan pelbagai algoritma, termasuk algoritma De La Loubère, Lucas dan Siwo.

Apl

Tatasusunan ajaib digunakan secara meluas dalam pelbagai bidang, termasuk:

  • Pemprosesan Data: Magic Circle boleh digunakan untuk memvisualisasikan dan menganalisis data berbilang dimensi.
  • Grafik Komputer: Lingkaran ajaib boleh digunakan untuk mencipta grafik simetri dan cantik.
  • Teori Permainan: Lingkaran ajaib boleh digunakan untuk mereka bentuk permainan dan teka-teki yang adil.
  • Seni Bina dan Reka Bentuk: Lingkaran ajaib boleh digunakan untuk mencipta struktur dan corak dengan perkadaran dan simetri yang harmoni.

Kesimpulan

Fungsi bulatan ajaib NumPy menyediakan alat yang berkuasa untuk pemprosesan data dan penerokaan matematik. Ia membolehkan pembangun mencipta matriks segi empat sama dengan sifat ajaib dengan mudah, dengan itu membuka kunci pelbagai aplikasi dan kemungkinan.

Atas ialah kandungan terperinci Lingkaran ajaib NumPy: mendedahkan teknologi hitam pemprosesan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam