Open In App

How to convert a dictionary into a NumPy array?

Last Updated : 05 Mar, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

It’s sometimes required to convert a dictionary in Python into a NumPy array and Python provides an efficient method to perform this operation. Converting a dictionary to NumPy array results in an array holding the key-value pairs in the dictionary. Python provides numpy.array() method to convert a dictionary into NumPy array but before applying this method we have to do some pre-task. As a pre-task follow this simple three steps

  1. First of all call dict.items() to return a group of the key-value pairs in the dictionary. 
  2. Then use list(obj) with this group as an object to convert it to a list. 
  3. At last, call numpy.array(data) with this list as data to convert it to an array.

Syntax:

numpy.array(object, dtype = None, *, copy = True, order = ‘K’, subok = False, ndmin = 0)

Parameters:

object: An array, any object exposing the array interface

dtype: The desired data-type for the array. 

copy: If true (default), then the object is copied. Otherwise, a copy will only be made if __array__ returns a copy

order: Specify the memory layout of the array

subok: If True, then sub-classes will be passed-through, otherwise the returned array will be forced to be a base-class array (default)

ndmin: Specifies the minimum number of dimensions that the resulting array should have.

Returns:

ndarray: An array object satisfying the specified requirements.

Example 1:

Python




# Python program to convert
# dictionary to numpy array
 
# Import required package
import numpy as np
 
# Creating a Dictionary
# with Integer Keys
dict = {1: 'Geeks',
        2: 'For',
        3: 'Geeks'}
 
# to return a group of the key-value
# pairs in the dictionary
result = dict.items()
 
# Convert object to a list
data = list(result)
 
# Convert list to an array
numpyArray = np.array(data)
 
# print the numpy array
print(numpyArray)


Output:

[['1' 'Geeks']
 ['2' 'For']
 ['3' 'Geeks']]

Time Complexity: O(n)
Space Complexity: O(n)

Example 2:

Python




# Python program to convert
# dictionary to numpy array
 
# Import required package
import numpy as np
 
# Creating a Nested Dictionary
dict = {1: 'Geeks',
        2: 'For',
        3: {'A': 'Welcome',
            'B': 'To',
            'C': 'Geeks'}
        }
 
# to return a group of the key-value
# pairs in the dictionary
result = dict.items()
 
# Convert object to a list
data = list(result)
 
# Convert list to an array
numpyArray = np.array(data)
 
# print the numpy array
print(numpyArray)


Output:

[[1 'Geeks']
 [2 'For']
 [3 {'A': 'Welcome', 'B': 'To', 'C': 'Geeks'}]]

Time complexity: O(n), where n is the number of key-value pairs in the dictionary.

Auxiliary space: O(n), to store the list of key-value pairs in the dictionary.

Example 3:

Python




# Python program to convert
# dictionary to numpy array
 
# Import required package
import numpy as np
 
# Creating a Dictionary
# with Mixed keys
dict = {'Name': 'Geeks',
        1: [1, 2, 3, 4]}
 
# to return a group of the key-value
# pairs in the dictionary
result = dict.items()
 
# Convert object to a list
data = list(result)
 
# Convert list to an array
numpyArray = np.array(data)
 
# print the numpy array
print(numpyArray)


Output:

[['Name' 'Geeks']
 [1 list([1, 2, 3, 4])]]

Time complexity: The time complexity of converting a dictionary to a numpy array is O(n), where n is the number of elements in the dictionary.

Space complexity: The space complexity of converting a dictionary to a numpy array is O(n), where n is the size of the numpy array.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads