宇野  和也

宇野 和也

1636120800

PythonのNumpy Linalg Tensorsolve()関数

Numpy linalg tensorsolve()関数は、xのax = bの方程式を計算するために使用されます。行われているように、すべてのxインデックスが積とaの正しいインデックスの上に要約されていると想定されます。たとえば、tensordot(a、x、axes = b.ndim)。

構文

numpy.linalg.tensorsolve(A, B, axes=None )

パラメーター

  1. A:係数テンソル、条件b。status + Q. Q、タプルは、正しいインデックスの数が正しいサブテンソルの形状に等しく、同じである必要があります(pr)(Q)== prod(b).shape)( 「正方形」と呼ばれます)。
  2. B:右側のテンソル。任意の形状にすることができます。 

戻り値

linalg tensorsolve()関数は、Qと同じ形状のndarrayを返します。 

Aが特異であるか正方行列でない場合、linalg tensorsolve()関数はLinAlgErrorをスローします。

プログラミング例

tensorsolve()の動作を示すプログラム:

# Program to show working of solve()
import numpy as np

# creating the array "a"
A = np.array([[3, 4, 5], [1, 2, 3], [2, 4, 5]])
B = np.array([9, 8, 7])
print("Array A is: \n", A)
print("Array B is : \n", B)

# Calculating the equation
ans = np.linalg.tensorsolve(A, B)

# Printing the answer
print("Answer of the equation is  :\n", ans)

# Checking if the answer if correct
print(np.allclose(np.dot(A, ans), B))

出力

Array A is:
 [[3 4 5]
 [1 2 3]
 [2 4 5]]
Array B is :
 [9 8 7]
Answer of the equation is  :
 [  2.  -10.5   9. ]
True

説明

この例では、特異ではない3×3の正方行列を作成し、それを印刷しました。次に、サイズ3の配列を作成し、それも印刷しました。

次に、numpy.linalg.tensorsolve()呼び出して、方程式Ax = Bを計算しましたBの逆形状の出力があることがわかります。
 

また、ついに、返された答えがTrueであるかどうかを確認しました。

 

numpy linalg tensorsolve()関数については以上です。

リンク: https://appdividend.com/2020/11/09/numpy-linalg-tensorsolve-function-in-python/

#python 

What is GEEK

Buddha Community

PythonのNumpy Linalg Tensorsolve()関数
宇野  和也

宇野 和也

1636120800

PythonのNumpy Linalg Tensorsolve()関数

Numpy linalg tensorsolve()関数は、xのax = bの方程式を計算するために使用されます。行われているように、すべてのxインデックスが積とaの正しいインデックスの上に要約されていると想定されます。たとえば、tensordot(a、x、axes = b.ndim)。

構文

numpy.linalg.tensorsolve(A, B, axes=None )

パラメーター

  1. A:係数テンソル、条件b。status + Q. Q、タプルは、正しいインデックスの数が正しいサブテンソルの形状に等しく、同じである必要があります(pr)(Q)== prod(b).shape)( 「正方形」と呼ばれます)。
  2. B:右側のテンソル。任意の形状にすることができます。 

戻り値

linalg tensorsolve()関数は、Qと同じ形状のndarrayを返します。 

Aが特異であるか正方行列でない場合、linalg tensorsolve()関数はLinAlgErrorをスローします。

プログラミング例

tensorsolve()の動作を示すプログラム:

# Program to show working of solve()
import numpy as np

# creating the array "a"
A = np.array([[3, 4, 5], [1, 2, 3], [2, 4, 5]])
B = np.array([9, 8, 7])
print("Array A is: \n", A)
print("Array B is : \n", B)

# Calculating the equation
ans = np.linalg.tensorsolve(A, B)

# Printing the answer
print("Answer of the equation is  :\n", ans)

# Checking if the answer if correct
print(np.allclose(np.dot(A, ans), B))

出力

Array A is:
 [[3 4 5]
 [1 2 3]
 [2 4 5]]
Array B is :
 [9 8 7]
Answer of the equation is  :
 [  2.  -10.5   9. ]
True

説明

この例では、特異ではない3×3の正方行列を作成し、それを印刷しました。次に、サイズ3の配列を作成し、それも印刷しました。

次に、numpy.linalg.tensorsolve()呼び出して、方程式Ax = Bを計算しましたBの逆形状の出力があることがわかります。
 

また、ついに、返された答えがTrueであるかどうかを確認しました。

 

numpy linalg tensorsolve()関数については以上です。

リンク: https://appdividend.com/2020/11/09/numpy-linalg-tensorsolve-function-in-python/

#python 

Elton  Bogan

Elton Bogan

1600200960

SciPy Linear Algebra - SciPy Linalg

SciPy is one of the fundamental packages for scientific computations. It provides the user with mathematical algorithms and convenient built-in functions. It is handy in the field of data science. There are modules in SciPy for working with data science, maths, statistics, and also machine learning. We use scipy.linalg modules for working with machine learning concepts. Let us learn more about SciPy Linear Algebra.

#numpy tutorials #scipy linalg #scipy linear algebra #numpy

PythonのNumpy Linalg Det()メソッド

数値パッケージNumPyを使用してPythonで行列式の値を計算するには、numpy.linalg.det()関数を使用します。しかし、行列の行列式は何ですか:それは2つの対角要素(左対角-右対角)の積の減算から計算されます。

np.linalg.det

Numpy linalg det()は、正方行列の行列式を取得するために使用されます。 たとえば、2×2 [[1、2]、[2、4]]の行列がある場合、答えは(4 * 1)-(2 * 2)= 0になります。np.linalg.det()関数は引数として配列を取り、指定された配列の行列式を返します。

行列式は、線形代数の計器値です。正方行列の対角項目から計算されます。2×2行列の場合、他の2つの積から左上と右下の項目の積を引くだけです。

構文

numpy.linalg.det(array)

np.linalg.det()関数は、パラメーターとして1つの引数、つまり配列名のみを取ります。

 

戻り値

np.linalg.det()関数は、指定された配列の行列式を返します。戻り値はfloatデータ型になります。

プログラミング例

2×2マトリックスでのinlag.det()の動作を示すプログラム:

# Importing numpy
import numpy as np

# This will create a 2D array of shape 2x2 with values 5 to 8
arr = np.arange(5, 9).reshape(2, 2)
print("The array is:\n", arr)
print("Shape of the array is : ", np.shape(arr))

# Now we will print determinant using det() function
print("Determinant of the given array: ", np.linalg.det(arr))

# Verify with the manual caculation
detr = (5*8)-(7*6)
print("Determinant using manual method: ", detr)

出力

The array is:
 [[5 6]
 [7 8]]
Shape of the array is :  (2, 2)
Determinant of the given array:  -2.000000000000005
Determinant using manual method:  -2

説明:

この例では、最初に2×2の形状の配列を1つ作成し、それを印刷しました。次に、numpy.linalg.det()関数を呼び出して、指定された配列の行列式を計算しました。次に、行列式を手動で計算しました。両方の値がほぼ同じであることがわかります。

 

3×3マトリックスでlinalg.det()の動作を示すプログラム:

次のコードを参照してください。

# Importing numpy
import numpy as np

# This will create a 2D array of shape 3x3 with values 1 to 9
arr = np.arange(1, 10).reshape(3, 3)
print("The array is:\n", arr)
print("Shape of the array is : ", np.shape(arr))

# Now we will print determinant using det() function
print("Determinant of the given array: ", np.linalg.det(arr))

# Verify with the manual caculation
detr = 1*(5*9 - 6*8) + 2*(4*9 - 6*7) - 3*(4*8 - 5*7)
print("Determinant using manual method: ", detr)

出力

The array is:
 [[1 2 3]
 [4 5 6]
 [7 8 9]]
Shape of the array is :  (3, 3)
Determinant of the given array:  0.0
Determinant using manual method:  -6

説明

この例では、最初に形状3×3の1つの配列を作成し、それを印刷しました。次に、numpy.linalg.det()関数を呼び出して、指定された配列の行列式を計算しました。次に、行列式を手動で計算しました。両方の値がほぼ同じであることがわかります。

結論

言い換えると、行列[[w、x]、[c、d]]の場合、行列式は「ad-bc」として計算されます。大きい方の正方行列は、2×2行列の組み合わせと見なされます。 numpy.linalg.det() 関数は、入力行列の行列式を計算します。

最後に、Pythonの例のNumpy linalg det()メソッドは終了しました。

リンク: https://appdividend.com/2020/06/03/numpy-linalg-det-method-in-python/

#python 

宇野  和也

宇野 和也

1636142820

PythonのNumpy Linalg Slogdet()関数

Numpy linalg slogdet()関数は、配列の行列式の符号と(自然)対数を計算するために使用されます。ここで問題となるのは、このslogdet()がいつ必要になるかということです。

ほとんどのリストのインデックスが少なすぎるか少なすぎる場合、det()の呼び出しがオーバーフローまたはアンダーフローする可能性があります。このプロセス(slogdet())は、ショートカット自体ではなくショートカットの対数を含むため、このような問題よりもはるかに堅牢です。

構文

numpy.linalg.slogdet(array)

パラメーター

slogdet()関数は単一のパラメーターを取ります。

  1. 配列:これは2D配列であり、正方形である必要があります。 

戻り値

slogdet()関数は2つの値を返します。

 

サイン: 

行列式の符号を表す数値。実数行列の場合、これは1、0、または-1です。複素行列の場合、これは絶対値が1の複素数(つまり、単位円上にある)、または0の複素数です。

logdet:

これは、行列式の絶対値の自然対数です。

 

行列式がゼロの場合、 `sign`は0になり、` logdet`

-Inf。すべての場合において、行列式は「sign * np.exp(logdet)」と同じです。

プログラミング例

1つの2D配列の行列式を計算するプログラム

# Program to calculate determinant of one 2D array
import numpy as np

# creating a 2D array
arr = np.array([[3, 4, 5], [7, 8, 6], [10, 11, 2]])

# printing the array
print(arr)

# calculating the slogdet
(sign, logdet) = np.linalg.slogdet(arr)

# Printing those values
print("Sign is : ", sign)
print("Logdet is :", logdet)

出力

[[ 3  4  5]
 [ 7  8  6]
 [10 11  2]]
Sign is :  1.0
Logdet is : 2.944438979166441

説明

このプログラムでは、サイズ3×3の正方行列を作成し、それを印刷しました。
 

次に、slogdet()を呼び出して、配列の符号とlogdetを取得しました。
 

サイン1を取得したことがわかります。

行列のスタックの対数行列式を計算するプログラム。

次のコードを参照してください。

# Computing log-determinants for a stack of matrices
import numpy as np

# creating the stack matrices
arr = np.array([[[2, 1], [3, 4]], [[3, 4], [5, 6]], [[7, 8], [9, 10]]])
# printing the values
print("The array is:\n", arr)
print("Shape of the array is: ", arr.shape)

# Calculating the slogdet
(sign, logdet) = np.linalg.slogdet(arr)

# Printing those values
print("Sign is : ", sign)
print("Logdet is :", logdet)

出力

The array is:
 [[[ 2  1]
  [ 3  4]]

 [[ 3  4]
  [ 5  6]]

 [[ 7  8]
  [ 9 10]]]
Shape of the array is:  (3, 2, 2)
Sign is :  [ 1. -1. -1.]
Logdet is : [1.60943791 0.69314718 0.69314718]

説明

このプログラムでは、サイズ3×2の正方行列を作成し、それを印刷しました。

次に、slogdet()関数を呼び出して、配列の符号とlogdetを取得しました。

記号[1.-1。-1]。

リンク: https://appdividend.com/2020/11/09/numpy-linalg-slogdet-function-in-python-with-example/

#python 

PythonのNumpy Log1p()メソッド

NumPyはPython言語のサードパーティライブラリであり、大規模な多次元配列と行列のサポートを追加し、これらの配列で実行する多くの高レベルの数学関数を伴います。

Numpy log()関数は、値x + 1の自然対数を取得するために使用されます。ここで、xは配列の要素、またはxはオブジェクトです。log1pは、exp(x)–1の逆です。 

np.log1p

Numpy log1p()は、ユーザーがx + 1の自然対数値を計算するのに役立つ数学関数です。ここで、xはすべての入力配列要素に属します。log1pは() の逆である1 - EXP(X)

np.log1p()関数は二つの引数受け入れ アレイ と アウト パラメータ、および戻り値指定された配列要素の要素のX + 1の自然対数の配列。

 

構文

numpy.log1p(array[, out] = ufunc ‘log1p’)

パラメーター

np.log1p()関数は、最大2つの主要な引数を取ることができます。

  1. array:これは、ログが計算される入力配列またはオブジェクトです。ただし、この関数は配列のすべての要素に1を追加します。
  2. out:これはオプションのフィールドです。結果が格納される位置。指定する場合は、入力が伝達する形式である必要があります。指定しない場合またはなしの場合は、新しく割り当てられたリストを返します。タプルは(唯一のキーワード引数として可能)出力の数と同じ長さを有していなければなりません。

戻り値

log1p()関数は、指定された配列要素の要素の値x +1の自然対数の配列を返します。

 

numpy.log()の動作を示すプログラム

次のコードを参照してください。

# Program to show the working of numpy.log

# Importing numpy
import numpy as np

# We will create an 1D array
arr = np.array([4, 14, 10, 63, 11, 4, 64])
# Printing the array
print("The array is: ", arr)
# Shape of the array
print("Shape of the array is : ", np.shape(arr))

# Calculating natural log of value arr[i]+1
out = np.log1p(arr)
print("Natural logarithm of the given array is ")
print(out)

出力

The array is:  [ 4 14 10 63 11  4 64]
Shape of the array is :  (7,)
Natural logarithm of the given array is
[1.60943791 2.7080502  2.39789527 4.15888308 2.48490665 1.60943791
 4.17438727]

説明

このプログラムでは、形状7の配列を宣言してから、その配列を出力しました。次に、numpy.log1p()を呼び出して、指定された配列の要素の値arr [i] +1の自然対数を計算しました。

log()のグラフィック表現

次のコードを参照してください。

# Program to show Graphical represntation

# Importing numpy
import numpy as np
import matplotlib.pyplot as plt

# We will create an 1D array
arr = np.array([40, 2.4, 0.14, 63, 1.2, 1, 4])
# Printing the array
print("The array is: ", arr)
# Shape of the array
print("Shape of the array is : ", np.shape(arr))

# Calculating natural log of value arr[i]+1
out = np.log1p(arr)
print("Natural logarithm of the given array is ")
print(out)

# Ploting of original array in Graph
# Color will be in Green
plt.plot(arr, arr, color='green', marker='x')

# Ploting of natural log array in Graph
# Color will be in blue
plt.plot(out, arr, color='blue', marker='o')

# Showing the Graphical represntation
plt.title("numpy.log1p()")
plt.xlabel("Natural Log Array")
plt.ylabel("Original Array")
plt.show()

出力

The array is:  [40.    2.4   0.14 63.    1.2   1.    4.  ]
Shape of the array is :  (7,)
Natural logarithm of the given array is
[3.71357207 1.22377543 0.13102826 4.15888308 0.78845736 0.69314718
 1.60943791]

Pythonのnplog1p()

説明

このプログラムでは、最初に形状7の配列を宣言し、次に配列要素がfloatデータ型である配列を出力しました。次に、numpy.log1p()を呼び出して、指定された配列の要素の自然対数を計算しました。

その後、グリーンラインの使用を示す2Dグラフに元の配列をプロットしました。自然対数を求めて得られたout配列をプロットしました。これは、青い線を使用して示しています。上記の画像で結果を確認できます。

numpy log1p()メソッドの例は以上です。

リンク: https://appdividend.com/2020/08/04/numpy-log1p-example-np-log1p-in-python/

#python