a = list of number with length k
b = list of number with length k
aとbの値が小さいリストcをどのように取得するには、位置によって位置が決まりますか?リストの理解度を使用して2つのリスト間で低い値を選択するにはどうすればよいですか?
Example:
a = [0.6, 0.8, 0.4]
b = [0.4, 1.0, 0.5]
c = [0.4, 0.8, 0.4]
a = list of number with length k
b = list of number with length k
aとbの値が小さいリストcをどのように取得するには、位置によって位置が決まりますか?リストの理解度を使用して2つのリスト間で低い値を選択するにはどうすればよいですか?
Example:
a = [0.6, 0.8, 0.4]
b = [0.4, 1.0, 0.5]
c = [0.4, 0.8, 0.4]
あなたはこのようzip()
を使用することができます。
c = [min(*item) for item in zip(a, b)]
出力:
>>> a = [0.6, 0.8, 0.4]
>>> b = [0.4, 1.0, 0.5]
>>>
>>> c = [min(*item) for item in zip(a, b)]
>>> c
[0.4, 0.8, 0.4]
これはmin
とzip
のシンプルなアプリケーションです:
c = [min(aa, bb) for aa, bb in zip(a, b)]
あなたはこのような計算をたくさんやろうとしている場合、それはnumpy
を使用して価値があるかもしれません:
c = numpy.minimum(a, b)
例:
>>> a = numpy.array([0.6, 0.8, 0.4])
>>> b = numpy.array([0.4, 1.0, 0.5])
>>> numpy.minimum(a, b)
array([ 0.4, 0.8, 0.4])
私は 'np.minimum'がペアワイズで比較したのか分かりませんでした。ありがとう! – Minoru
配列要素の最小の最小値です。
numpy.minimum(a, b)
そのような 'zip()'で 'for'を使うことができないか分かりませんでした。本当にそれが好きだった! – Minoru
@Lucas Pythonは強力です;) – ettanany