在Python中将数组与布尔元素与字符串组合
我有一个numpy array在Python中将数组与布尔元素与字符串组合,python,arrays,numpy,Python,Arrays,Numpy,我有一个numpy arrayarr和一些从0到8847的随机数,我想把它转换为,例如,如果数字从0到930,应该有“a”,如果数字大于930但小于3971,应该有“b”等等 我的第一个想法是: ((arr <= 930) * 'a') + ((arr > 930 and arr <= 3971) * 'b') + ((arr > 3971 and arr <= 6053) * 'c') + ((arr > 6053) * 'd') 它也不起作用 我知道我可
arr
和一些从0到8847的随机数,我想把它转换为,例如,如果数字从0到930,应该有“a”,如果数字大于930但小于3971,应该有“b”等等
我的第一个想法是:
((arr <= 930) * 'a') + ((arr > 930 and arr <= 3971) * 'b')
+ ((arr > 3971 and arr <= 6053) * 'c') + ((arr > 6053) * 'd')
它也不起作用
我知道我可以使用循环,我知道如何使用循环,但我宁愿避免使用循环。你有什么想法吗?这是我学习Python的第一天,所以我更喜欢易于理解的解决方案
提前感谢各位。你们可以用对分法
请看这里提供的示例
a = ['a'] * 8847
a[arr]