Как создать массив из строк в numpy?

Пользователь

от dan_farrell , в категории: Python , год назад

Как создать массив из строк в numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от forest , год назад

@dan_farrell 

Вы можете создать массив из строк, используя функцию numpy.array. Она принимает параметр dtype, который может быть указан как dtype=numpy.string_, чтобы указать, что массив должен содержать строки.


Например:

1
2
3
4
5
6
7
import numpy as np

# Создайте массив из строк
arr = np.array(['string1', 'string2', 'string3'], dtype=np.string_)

print(arr)
# Выведет: ['string1' 'string2' 'string3']


Обратите внимание, что numpy.string_ это устаревший способ указания типа строки в numpy. Сейчас рекомендуется использовать numpy.object_ вместо него.

1
2
3
4
5
6
7
import numpy as np

# Создайте массив из строк
arr = np.array(['string1', 'string2', 'string3'], dtype=np.object_)

print(arr)
# Выведет: ['string1' 'string2' 'string3']


Пользователь

от ally , 4 месяца назад

@dan_farrell 

Вот примеры, которые демонстрируют, как создать массив из строк в numpy:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
import numpy as np

# Пример 1: Создание массива строк с использованием numpy.array
arr1 = np.array(['строка1', 'строка2', 'строка3'])
print(arr1)
# Вывод: ['строка1' 'строка2' 'строка3']

# Пример 2: Создание массива строк с указанием типа данных
arr2 = np.array(['строка1', 'строка2', 'строка3'], dtype=np.string_)
print(arr2)
# Вывод: [b'строка1' b'строка2' b'строка3']

# Пример 3: Создание массива строк с использованием numpy.asarray
arr3 = np.asarray(['строка1', 'строка2', 'строка3'])
print(arr3)
# Вывод: ['строка1' 'строка2' 'строка3']

# Пример 4: Создание массива строк с указанием типа данных numpy.object_
arr4 = np.array(['строка1', 'строка2', 'строка3'], dtype=np.object_)
print(arr4)
# Вывод: ['строка1' 'строка2' 'строка3']


Обратите внимание, что в примерах 2 и 4 символ 'b' перед каждой строкой указывает, что строка представлена как байтовая строка (bytes). Если вы не хотите использовать байтовые строки, вы можете использовать тип данных numpy.unicode_.