1

マトリックスがあるとしましょう[[-2,4],[-6,8]]

これらの数字の反対を取得する方法を知りたい: [[2,-4],[6,-8]].

使用することになっている Python の特別な関数はありますか?

4

4 に答える 4

3

numpyは素晴らしいです:P

a = numpy.array( [[-2,4],[-6,8]])
a *= -1
print a
于 2014-04-04T19:16:25.990 に答える
1

リスト内包表記を使用することは、それを行う 1 つの方法です。

>>> data = [[-2,4],[-6,8]]
>>> [[-ele for ele in item] for item in data]
[[2, -4], [6, -8]]
于 2014-04-04T19:15:42.390 に答える
0
import numpy

matrix = numpy.array([[-2,4],[-6,8]])
negatedMatrix = matrix * -1

print negatedMatrix

出力を与える:

[[ 2 -4]
 [ 6 -8]]
于 2014-04-04T19:24:11.413 に答える
0

パッケージをインポートしたくなく、リスト内包表記にも問題があるが、不必要で複雑なものが好きな場合は、次のように使用できmap()ますlambda

data = [[-2,4],[-6,8]]
reversed_data = map(lambda sublist: map(lambda x: -x, sublist), data)
# [[2, -4], [6, -8]]

編集: この例は python 2.7 で動作しています。Python 3+ではイテレータが返されるため、この結果を取得map()する必要があります。list(map())(クレジットはSethMMortonに送られます)

于 2014-04-04T19:43:25.633 に答える