numpyの学習(四)

運動の記事(その4)

41.どのようにnp.sumよりも速く小さな配列を合計するには?(★★☆)

1 ARR = np.arange(10 2  プリント(np.add.reduce(ARR))

結果:45

42.(☆★★)は、それらが等しいかどうかを確認し、2つのランダムアレイA及びBを考えます

1 ARR1 = np.random.randint(0,2,4).reshape(2,2 2 ARR2 = np.random.randint(0,2,4).reshape(2,2 3  プリント(ARR1)
 4  プリント(ARR2)
 5  プリント(np.allclose(ARR1、ARR2))
 6  プリント(np.array_equal(ARR1、ARR2))

結果:

[0 1]
[1]
[1 0]
[1]]

43.不変の配列を作成します(読み取り専用)(★★☆)

1 ARR = np.random.randint(1,2、(3,3 ))
 2 arr.flags.writeable = Falseの
 3つの ARR [0] [0] = 1

結果:

 44は、極座標(★★☆)に変換し、デカルト座標を表すランダム10x2ではマトリックスを検討します

1 ARR = np.random.randint(1,10、(10,2 ))
 2 X = ARRの[:0]
 3、Y = ARRの[:1 ]
 4 R = np.sqrt(X ** 2 + Y ** 2 5 T = np.arctan2(Y、X)
 6  プリント(R)
 7  プリント(T)

結果:

【8.94427191 9.21954446 9.89949494 10.63014581 7.07106781 9.21954446
8.94427191 9.05538514 8.60232527 11.3137085]
[0.46364761 0.21866895 0.78539816 0.71883 0.78539816 0.86217005
1.10714872 0.11065722 0.62024949 0.78539816]

(☆★★)45サイズ10のランダムベクトルを作成し、0の最大値を置き換えます

1 ARR = np.random.randint(1,10,10 2  プリント(ARR)
 3つの ARR [arr.argmax()] = 0
 4  プリント(ARR)

結果:

[3 4 7 8 4 2 4 4 2 8]
[3 4 7 0 4 2 4 4 2 8]

46で構成配列を作成xし、y(☆★★)[0,1]×[0,1]エリアをカバーする座標

1のARR =のnp.zeros((5,5)、[(' X '、フロート)、(' Y ' 、フロート)])
 2つの ARR [ ' X ' ]、ARR [ ' Y ' = np.meshgrid( np.linspace(0,1,5)、np.linspace(0,1,5 ))
 3  プリント(ARR)

結果:

[(0、0)(0.25、0.1)、(0.5、0.1)、(0.75、0)、(1、0)]
[(0、0.25)、(0.25、0.25)(0.5、 0.25)、(0.75、0.25)(1、0.25)]
[(0、0.5)、(0.25、0.5)、(0.5、0.5)、(0.75、0.5)(1、0.5)]
[(0、0.75) (0.25、0.75)(0.5、0.75)、(0.75、0.75)(1、0.75)]
[(0、1)(0.25、1)(0.5、1)(0.75、1)(1 。、1)]]

47は、2つの配列、X及びYが与えられると、コーシー行列C( - YJ)セルCij = 1 /(XI)を構築します

1 ARR1 = np.random.randint(5,10,5 2 ARR2 = np.random.randint(1,5,5 3  プリント(ARR1)
 4  プリント(ARR2)
 5 = 1.0 / ARR3 np.subtract.outer (ARR1、ARR2)
 6  プリント(ARR3)

結果:

[9 9 5 6 7]
[2 3 1 4 1]
[0.14285714 0.16666667 0.125 0.2 0.125]
[0.14285714 0.16666667 0.125 0.2 0.125]
[0.33333333 0.5 0.25 1 0.25]
、[0.25 0.33333333 0.2 0.5 0.2]
[0.2 0.25 0.16666667 0.33333333 0.16666667 ]]

48プリント各numpyのスカラ型の最小値と最大値表現(★★☆)

1  ため DTYPE [np.int8、np.int32、np.int64]:
 2      プリント(np.iinfo(DTYPE).min)
 3      プリント(np.iinfo(DTYPE).MAX)
 4  のための DTYPE [np.float32 、np.float64]:
 5      プリント(np.finfo(DTYPE).min)
 6      プリント(np.finfo(DTYPE).MAX)

結果:

-128
127
-2147483648
2147483647
-9223372036854775808
9223372036854775807
-3.4028235E + 38
3.4028235E + 38
-1.7976931348623157e + 308
1.7976931348623157e + 308

49.どのように配列のすべての値を出力するには?(★★☆)

1 ARR = np.random.randint(1,10,9).reshape(3,3 2  プリント(ARR)

結果:

[5 3 4]
[9 2 9]
[6 6 4]

50.どのようにベクトルで(与えられたスカラーに)最も近い値を見つけるには?(★★☆)

1 ARR1 = np.arange(100 2 ARR2 = np.random.uniform(0100 3指数=(np.abs(arr1- ARR2))。argmin()
 4  プリント(ARR1)
 5  プリント(ARR2)
 6  プリント( ARR1 [インデックス])

結果:

[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
96 97 98 99]
46.27162981393338
46

 

おすすめ

転載: www.cnblogs.com/orangecyh/p/11594248.html