Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonでNaNを1つとして扱い、軸1上の配列要素の累積積を返します


NaNを1つとして扱う、特定の軸上の配列要素の累積積を返すには、nancumprod()メソッドを使用します。 NaNが検出され、主要なNaNが1に置き換えられても、累積積は変化しません。 all-NaNまたは空のスライスの場合は1が返されます。このメソッドは、outが指定されていない限り、結果が返されることを保持する新しい配列を返します。指定されていない場合は、返されます。

累積は、5、5 * 10、5 * 10 * 15、5 * 10 * 15*20のように機能します。最初のパラメーターは入力配列です。 2番目のパラメーターは、累積積が計算される軸です。デフォルトでは、入力はフラット化されています。 3番目のパラメーターは、返される配列のタイプと、要素が乗算されるアキュムレーターのタイプです。 dtypeが指定されていない場合、デフォルトのプラットフォーム整数よりも精度が低い整数dtypeがない限り、デフォルトでaのdtypeになります。その場合、代わりにデフォルトのプラットフォーム整数が使用されます。

4番目のパラメーターは、結果を配置するための代替出力配列です。期待される出力と同じ形状とバッファ長である必要がありますが、結果の値のタイプは必要に応じてキャストされます。

ステップ

まず、必要なライブラリをインポートします-

import numpy as np

array()メソッドを使用してnumpy配列を作成します。 nan-

を使用してint型の要素を追加しました
arr = np.array([[5, 10, 15], [20, np.nan, 30]])

配列を表示する-

print("Our Array...\n",arr)

寸法を確認してください-

print("\nDimensions of our Array...\n",arr.ndim)

データ型を取得-

print("\nDatatype of our Array object...\n",arr.dtype)

NaNを1つとして扱う、特定の軸上の配列要素の累積積を返すには、nancumprod()メソッド-

を使用します。
print("\nCumulative Product of array elements...\n",np.nancumprod(arr, axis = 1))

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of int type with nan
arr = np.array([[5, 10, 15], [20, np.nan, 30]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# To return the cumulative product of array elements over a given axis treating NaNs as one, use the nancumprod() method
# The cumulative product does not change when NaNs are encountered and leading NaNs are replaced by ones.
print("\nCumulative Product of array elements...\n",np.nancumprod(arr, axis = 1))
に置き換えられます。

出力

Our Array...
[[ 5. 10. 15.]
[20. nan 30.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Cumulative Product of array elements...
[[ 5. 50. 750.]
[ 20. 20. 600.]]

  1. PythonでNaNをゼロとして扱い、指定された軸0の配列要素の累積合計を返します

    NaNをゼロとして扱う、特定の軸上の配列要素の累積合計を返すには、nancumprod()メソッドを使用します。 NaNが検出され、先頭のNaNがゼロに置き換えられても、累積合計は変化しません。 all-NaNまたは空のスライスの場合はゼロが返されます。累積は、5、5 + 10、5 + 10 + 15、5 + 10 + 15+20のように機能します。 最初のパラメーターは入力配列です。 2番目のパラメーターは、累積合計が計算される軸です。デフォルト(なし)は、フラット化された配列の累積を計算することです。 3番目のパラメーターは、返される配列のタイプと、要素が合計されるアキュムレーターのタイ

  2. Pythonの軸0上のN次元配列の勾配を返します

    勾配は、内部ポイントの2次の正確な中心の差と、境界での1次または2次の正確な片側(前方または後方)の差を使用して計算されます。したがって、返される勾配は、入力配列と同じ形状になります。最初のパラメーターfは、スカラー関数のサンプルを含むN次元配列です。 2番目のパラメーターは、varargs、つまりf値間の間隔です。すべての寸法のデフォルトの単一間隔。 3番目のパラメータはedge_order{1、2}です。つまり、勾配は境界でのN次の正確な差を使用して計算されます。デフォルト:1。4番目のパラメーターはグラデーションで、指定された1つまたは複数の軸に沿ってのみ計算されます。デフォルト(ax