Home  >  Article  >  Backend Development  >  How Can I Convert a List of Lists into a Uniform NumPy Array?

How Can I Convert a List of Lists into a Uniform NumPy Array?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-20 13:09:02687browse

How Can I Convert a List of Lists into a Uniform NumPy Array?

Converting a List of Lists into a NumPy Array

A common task in data analysis is converting a list of lists into a NumPy array for efficient numerical operations. This array can be formed by assigning each list to a row, with each element in the list occupying a column.

Option 1: Array of Arrays

If the sublists have varying lengths, a suitable approach is to create an array of arrays. This preserves the original structure of the list of lists, making it easy to retrieve specific elements or perform operations on individual sublists.

<code class="python">x = [[1, 2], [1, 2, 3], [1]]
y = numpy.array([numpy.array(xi) for xi in x])</code>

Option 2: Array of Lists

An alternative method is to create an array of lists. This approach maintains the structure of the list of lists, with each sublist represented as a list within the array.

<code class="python">x = [[1, 2], [1, 2, 3], [1]]
y = numpy.array(x)</code>

Option 3: Uniform List Lengths

If it's essential that the sublists have uniform lengths, it's possible to pad shorter lists with None values. This creates a rectangular array with consistent dimensions.

<code class="python">x = [[1, 2], [1, 2, 3], [1]]
length = max(map(len, x))
y = numpy.array([xi + [None] * (length - len(xi)) for xi in x])</code>

The above is the detailed content of How Can I Convert a List of Lists into a Uniform NumPy Array?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn