如何根据值标记numpy数组?
我有一个特定值的numpy数组[5,6,7,8,10,11,12,14];我希望将每个值标记为: 如果值小于或等于10,则为“N” 如果值大于10,则为“Y” 我的输出将是具有以下值的数组/列表: [N'、'N'、'N'、'N'、'N'、'Y'、'Y'、'Y']如何根据值标记numpy数组?,numpy,Numpy,我有一个特定值的numpy数组[5,6,7,8,10,11,12,14];我希望将每个值标记为: 如果值小于或等于10,则为“N” 如果值大于10,则为“Y” 我的输出将是具有以下值的数组/列表: [N'、'N'、'N'、'N'、'N'、'Y'、'Y'、'Y'] 我是python新手,急需一个项目的解决方案。请帮帮我。请不要给出否定的观点,因为我不能再问任何问题了。有很多方法可以做到这一点。以下是一些选项: In [1]: import numpy In [2]: x = numpy.arra
我是python新手,急需一个项目的解决方案。请帮帮我。请不要给出否定的观点,因为我不能再问任何问题了。有很多方法可以做到这一点。以下是一些选项:
In [1]: import numpy
In [2]: x = numpy.array([5,6,7,8,10,11,12,14])
In [3]: x
Out[3]: array([ 5, 6, 7, 8, 10, 11, 12, 14])
In [4]: x > 10
Out[4]: array([False, False, False, False, False, True, True, True], dtype=bool)
In [5]: ['Y' if y > 10 else 'N' for y in x]
Out[5]: ['N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y']
In [6]: [{True: 'Y', False: 'N'}[y] for y in x > 10]
Out[6]: ['N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y']
当然,你也可以使用地图或其他东西:
对于回路iter,tmp列表;
tmp列表中循环的每个元素将通过以下条件进行判断。。。首先,如果。。。然后在列表创建的新列表中输出“Y”。
不匹配,如果。。。然后在列表创建的新列表中输出“N”。