Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah saya boleh Menukar Senarai Senarai kepada Array NumPy?

Bagaimanakah saya boleh Menukar Senarai Senarai kepada Array NumPy?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-20 13:07:01487semak imbas

How can I Convert a List of Lists into a NumPy Array?

Cara Menukar Senarai Senarai kepada Tatasusunan NumPy

Menukar senarai senarai kepada tatasusunan NumPy ialah tugas biasa dalam analisis dan manipulasi data. Apabila bekerja dengan data yang mempunyai struktur hierarki, selalunya mudah untuk menggunakan senarai senarai untuk mewakilinya. Walau bagaimanapun, untuk operasi tertentu, senarai senarai mungkin perlu ditukar kepada tatasusunan NumPy untuk pemprosesan yang lebih cekap.

Sebagai contoh, senarai senarai yang mewakili jadual nilai mungkin kelihatan seperti ini:

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

Untuk menukar senarai senarai ini kepada tatasusunan NumPy, anda boleh menggunakan fungsi numpy.array(). Secara lalai, numpy.array() menganggap bahawa semua subsenarai mempunyai panjang yang sama. Oleh itu, jika senarai senarai anda mengandungi senarai dengan bilangan elemen yang berbeza-beza, penukaran akan gagal.

Pilihan untuk Menukar Senarai Panjang yang Berbeza kepada Tatasusunan NumPy

Jika senarai senarai anda mengandungi senarai dengan bilangan elemen yang berbeza-beza, terdapat beberapa pilihan yang tersedia:

  1. Buat Tatasusunan:

    Pilihan ini menghasilkan tatasusunan di mana setiap elemen berada itu sendiri tatasusunan yang mengandungi unsur-unsur subsenarai yang sepadan.

    <code class="python">import numpy as np
    
    my_list_of_lists = [[1, 2], [1, 2, 3], [1]]
    my_array_of_arrays = np.array([np.array(xi) for xi in my_list_of_lists])</code>
  2. Buat Tatasusunan Senarai:

    Pilihan ini mencipta tatasusunan di mana setiap elemen ialah senarai yang mengandungi elemen subsenarai yang sepadan.

    <code class="python">my_array_of_lists = np.array(my_list_of_lists)</code>
  3. Samakan Panjang Senarai:

    Anda juga boleh memasukkan senarai yang lebih pendek dengan nilai Tiada untuk menyamakan panjangnya dan kemudian menukar senarai senarai menjadi tatasusunan.

    <code class="python">length = max(map(len, my_list_of_lists))
    my_array = np.array([xi + [None] * (length - len(xi)) for xi in my_list_of_lists])</code>

Dengan memilih kaedah yang sesuai berdasarkan keperluan khusus anda, anda boleh menukar senarai menyenaraikan ke dalam tatasusunan NumPy dan melaksanakan operasi selanjutnya pada data dengan cekap.

Atas ialah kandungan terperinci Bagaimanakah saya boleh Menukar Senarai Senarai kepada Array NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn