Combine Two Lists into 2D Array in Python (3 Examples)

 

Hi! This tutorial will show you how to merge 2 lists into a 2D array in the Python programming language.

Here is an overview:

Let’s get right into the Python code!

 

Create Example Lists

We will create 2 example Python lists of integers that will be consolidated into a 2D array in this tutorial.

So, in your preferred Python IDE, run the lines of code below to create the example Python lists:

list1 = [1, 2, 3]
 
print(list1)
 
# [1, 2, 3]
 
print(type(list1))
 
# <class 'list'>
 
list2 = [4, 5, 6]
 
print(list2)
 
# [4, 5, 6]
 
print(type(list2))
 
# <class 'list'>

With the Python lists created, we will now examine two ways to join both lists together as a 2D array.
 

Example 1: Merge 2 Lists into a 2D Array Using list() & zip() Functions

In this first example, we will use the built-in list() function and zip() function to join the two lists into a 2D array:

array_2d = list(zip(list1, list2))
 
print(array_2d)
 
# [(1, 4), (2, 5), (3, 6)]
 
print(type(array_2d))
 
# <class 'list'>

Here, the zip() function is used to pair corresponding elements from both lists.

The resulting pairs are then converted into a list using the list() function. Then, the contents of array_2d are printed to the console using the print() function.

Although the output is not exactly a 2D array, it is considered such by some sources.

 

Example 2: Merge 2 Lists into a 2D Array Using List Comprehension

In this next example, we will use list comprehension to combine both lists into a 2D array:

array_2d = [[list1[i], list2[i]] for i in range(len(list1))]
 
print(array_2d) 
 
# [[1, 4], [2, 5], [3, 6]]
 
print(type(array_2d))
 
# <class 'list'>

In the above example, we used list comprehension to iterate through the elements in each list, and stored those elements inside sublists.

This action, thus, returned a 2D array of 3 rows and 2 columns, i.e. a 3 x 2 array.
 

Example 3: Merge 2 Lists into a 2D Array Using for Loop & zip() Function

In this last example, we will use a for loop and the built-in zip() function to consolidate both lists into a 2D array:

array_2d = []
 
for i in zip(list1,list2):
 
  array_2d.append(list(i))
 
print(array_2d)
 
# [[1, 4], [2, 5], [3, 6]]
 
print(type(array_2d))
 
# <class 'list'>

The zip() function takes two or more iterables (e.g., lists, tuples, or strings) and aggregates them into a single iterable of tuples.

We then used the for loop to loop through the returned list of tuples, and parsed the loop variable to the list() function, which then returned a 2D array of 3 rows and 2 columns.

 

Video, Further Resources & Summary

Do you need more explanations on how to merge 2 lists into a 2D array in Python? Then you should have a look at the following YouTube video of the Statistics Globe YouTube channel.

In the video, we explain in some more detail how to merge 2 lists into a 2D array in Python.

 

The YouTube video will be added soon.

 

Furthermore, I encourage you to check out other interesting Python list tutorials on Statistics Globe, starting with these:

This post has shown, using three examples, how to merge 2 lists into a 2D array in Python. Your use case will determine which method to adopt.

I do hope you found this tutorial helpful! In case you have further questions, you may leave a comment below.

 

R & Python Expert Ifeanyi Idiaye

This page was created in collaboration with Ifeanyi Idiaye. You might check out Ifeanyi’s personal author page to read more about his academic background and the other articles he has written for the Statistics Globe website.

 

Subscribe to the Statistics Globe Newsletter

Get regular updates on the latest tutorials, offers & news at Statistics Globe.
I hate spam & you may opt out anytime: Privacy Policy.


Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.

Top