Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中将数组与布尔元素与字符串组合_Python_Arrays_Numpy - Fatal编程技术网

在Python中将数组与布尔元素与字符串组合

在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') 它也不起作用 我知道我可

我有一个numpy array
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]