Repeat all the elements of a NumPy array of strings
Last Updated :
05 Mar, 2023
Let us see how to repeat all elements of the given array of string 3 times. Example :
Input : ['Akash', 'Rohit', 'Ayush', 'Dhruv', 'Radhika'] Output : ['AkashAkashAkash', 'RohitRohitRohit', 'AyushAyushAyush', 'DhruvDhruvDhruv', 'RadhikaRadhikaRadhika']
We will be using the numpy.char.multiply(a, i) method for this task.
numpy.char.multiply(a, i)
Syntax : numpy.char.multiply(a, i) Parameters :
- a : array of str or unicode
- i : number of times to be repeated
Returns : Array of strings
Example 1 : Repeating 3 times.
Python3
# importing the module
import numpy as np
# created array of strings
arr = np.array(['Akash', 'Rohit', 'Ayush',
'Dhruv', 'Radhika'], dtype = np.str)
print("Original Array :")
print(arr)
# with the help of np.char.multiply()
# repeating the characters 3 times
new_array = np.char.multiply(arr, 3)
print("\nNew array :")
print(new_array)
Output :
Original Array : ['Akash' 'Rohit' 'Ayush' 'Dhruv' 'Radhika'] New array : ['AkashAkashAkash' 'RohitRohitRohit' 'AyushAyushAyush' 'DhruvDhruvDhruv' 'RadhikaRadhikaRadhika']
Time complexity: O(n), where n is the length of the input array
Auxiliary space: O(n).
Example 2: Repeating 2 times.
Python3
# importing the module
import numpy as np
# created array of strings
arr = np.array(['Geeks', 'for', 'Geeks'])
print("Original Array :")
print(arr)
# with the help of np.char.multiply()
# repeating the characters 3 times
new_array = np.char.multiply(arr, 2)
print("\nNew array :")
print(new_array)
Output :
Original Array :
['Geeks' 'for' 'Geeks']
New array :
['GeeksGeeks' 'forfor' 'GeeksGeeks']
Time complexity: O(n), where n is the number of characters in the original array.
Auxiliary space: O(n), where n is the number of characters in the original array.
EXAMPLE 3 - Method 2: We can use a list comprehension to repeat each string in the array multiple times .
Python3
# importing the module
import numpy as np
# created array of strings
arr = np.array(['Geeks', 'for', 'Geeks'])
print("Original Array :")
print(arr)
# using list comprehension to repeat each string in the array
n = 2 # number of times to repeat each string
new_array = np.array([s * n for s in arr])
print("\nNew array :")
print(new_array)
OUTPUT-
Original Array :
['Geeks' 'for' 'Geeks']
New array :
['GeeksGeeks' 'forfor' 'GeeksGeeks']
Time complexity: O(n * k), where n is the length of the input array and k is the number of times each string is repeated.
Auxiliary space: O(n), as we create a new list of length n to store the repeated strings. However, this is not counting the space needed for the input and output arrays.
Explore
Python Fundamentals
Python Data Structures
Advanced Python
Data Science with Python
Web Development with Python
Python Practice