Как преобразовать массив из 0 и 1 в массив строк в Python? - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть следующий массив python: np.array([1,1,1,0,0]), и я хочу преобразовать его в следующий массив: np.array(['yes','yes','yes','no','no]) на основе условия if 1, 'yes', else 'no'. Какой лучший способ сделать это? Я счастлив сделать это либо на месте, либо в отдельном массиве.

Ответы [ 2 ]

2 голосов
/ 30 сентября 2019

Использование np.where :

import numpy as np

arr = np.array([1,1,1,0,0])

result = np.where(arr, 'yes', 'no')
print(result)

Выход

['yes' 'yes' 'yes' 'no' 'no']
1 голос
/ 30 сентября 2019

Вы можете использовать понимание списка:

import numpy as np

arr = np.array([1,1,1,0,0])

result = np.array(['yes' if x else 'no' for x in arr])

print(result)

Вывод: ['yes' 'yes' 'yes' 'no' 'no']

...