Home  >  Article  >  Backend Development  >  How to convert dictionary to matrix or nArray in Python?

How to convert dictionary to matrix or nArray in Python?

王林
王林forward
2023-08-27 21:33:081351browse

How to convert dictionary to matrix or nArray in Python?

In this article, we will show you how to convert a dictionary to a matrix or a NumPy array using the array() function from Python’s NumPy library.

Sometimes you need to convert a dictionary in Python to a NumPy array, and Python provides an efficient way to achieve this. Converting a dictionary to a NumPy array results in an array containing the key-value pairs in the dictionary.

In this section, we will look at some examples of converting various types of dictionaries to NumPy arrays in Python

  • Convert dictionary to Numpy array
  • Convert nested dictionary to Numpy array
  • Convert dictionary with mixed keys to Numpy array

numpy.array() function

It returns an ndarray. ndarray is an array object that meets the given requirements.

To convert a dictionary into a NumPy array, Python provides the numpy.array() method, but we must do some preparation work first. Follow these three basic steps as a preliminary task.

  • First, use dict.items() to obtain a set of key-value pairs in the dictionary.
  • Then, taking this group as an object, use list(obj) to convert it to a list.
  • Finally, using this list as data, call numpy.array(data) to convert it to an array.

grammar

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

parameter

  • object − This is an array or any object that exposes the array interface.

  • dtype − The preferred data type for arrays.

  • copy − If true (default), the item is copied. Otherwise, a copy will only be made if __array__ returns a copy

  • order − It represents the memory layout of the array

  • subok − If true, the subclass will be passed; otherwise, the returned array will be cast to a base class array (default)

  • ndmin − Indicates the minimum dimension of the result array.

  • Return Value − Returns an ndarray (it is an array object that meets the specified requirements)

Convert dictionary to Numpy array

Algorithm (steps)

The following are the algorithms/steps to perform the required task:

  • Use the import keyword to import the numpy module with an alias (np).

  • Create a variable to store the input dictionary.

  • Apply the items() function (which returns the key-value pairs in the dictionary) to the input dictionary to get all the key-value pairs in the dictionary and create a variable to store it .

  • Use the list() function (returns a list of iterable objects) to convert all key-value pairs of the dictionary to the list data type.

  • Use the array() function of the NumPy module (returns an ndarray. ndarray is an array object that meets the given requirements) to convert the above data list into a NumPy array.

  • Print the NumPy array converted from the input dictionary.

Example

The following program uses the array() function to convert the input dictionary into a NumPy array and returns it -

# importing numpy module with an alias name
import numpy as np

# creating a dictionary
inputDict = {1: 'Hello',
2: 'Tutorialspoint',
3: 'python'}

# getting all the key-value pairs in the dictionary
result_keyvalpairs = inputDict.items()

# converting an object to a list
list_data = list(result_keyvalpairs)

# converting list to an numpy array using numpy array() function
numpy_array = np.array(list_data)
print("Input Dictionary =",inputDict)

# printing the resultant numpy array
print("The resultant numpy array:\n", numpy_array)

Output

When executed, the above program will generate the following output

Input Dictionary = {1: 'Hello', 2: 'Tutorialspoint', 3: 'python'}
The resultant numpy array:
 [['1' 'Hello']
 ['2' 'Tutorialspoint']
 ['3' 'python']]

Convert nested dictionary to Numpy array

Algorithm (steps)

The following are the algorithms/steps to perform the required task:

  • Create a variable to store an input nested dictionary (a dictionary within another dictionary).

  • Convert all nested key-value pairs of the dictionary to the list data type using the list() function (which returns a list of iterable objects).

  • Use the array() function of the NumPy module to convert the above data list into a NumPy array.

  • Print the NumPy array converted from the input dictionary.

Example

The following program uses the array() function to convert a nested input dictionary into a NumPy array and returns it

# importing NumPy module with an alias name
import numpy as np

# creating a nested dictionary
nestedDictionary = {1: 'Hello',
                    2: 'Tutorialspoint',
                    3: {'X': 'This is',
                        'Y': 'python',
                        'Z': 'code'}}

# getting all the key-value pairs in the dictionary
result_keyvalpairs = nestedDictionary.items()

# converting an object to a list
list_data = list(result_keyvalpairs)

# converting list to an array using numpy array() function
numpy_array = np.array(list_data)
print("Input nested Dictionary = ",nestedDictionary)

# printing the resultant numpy array
print("\nThe resultant numpy array:\n", numpy_array)

Output

When executed, the above program will generate the following output

Input nested Dictionary =  {1: 'Hello', 2: 'Tutorialspoint', 3: {'X': 'This is', 'Y': 'python', 'Z': 'code'}}

The resultant numpy array:
 [[1 'Hello']
   [2 'Tutorialspoint']
   [3 {'X': 'This is', 'Y': 'python', 'Z': 'code'}]]

Convert dictionary with mixed keys to Numpy array

Create an input dictionary with mixed keys such as strings, integers, floats, lists, etc. and fill it with random values.

Example

The following program uses the array() function to convert a dictionary with mixed keys into a NumPy array and returns it −

# importing numpy module with an alias name
import numpy as np

# creating a dictionary with mixed keys(like string and numbers as keys)
nestedDictionary = {'website': 'Tutorialspoint', 10: [2, 5, 8]}

# getting all the key-value pairs in the dictionary
result_keyvalpairs = nestedDictionary.items()

# converting an object to a list
list_data = list(result_keyvalpairs)

# converting list to an array using numpy array() function
numpy_array = np.array(list_data, dtype=object)

# printing the resultant numpy array
print("The resultant numpy array:\n", numpy_array)

Output

When executed, the above program will generate the following output

The resultant numpy array:
 [['website' 'Tutorialspoint']
   [10 list([2, 5, 8])]]

in conclusion

In this article, we learned about the various types of key-value pairs in a dictionary and how to convert them into a matrix or Numpy array.

The above is the detailed content of How to convert dictionary to matrix or nArray in Python?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete