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

PythonでNaNをゼロとして扱う配列要素の累積合計を返します


NaNをゼロとして扱う、特定の軸上の配列要素の累積合計を返すには、nancumprod()メソッドを使用します。 NaNが検出され、先頭のNaNがゼロに置き換えられても、累積合計は変化しません。 all-NaNまたは空のスライスの場合はゼロが返されます。

このメソッドは、outが指定されていない限り、結果を保持する新しい配列を返します。この配列で結果が返されます。結果は、aと同じサイズで、if軸がNoneでないか、aが1次元配列である場合と同じ形状になります。累積は、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([10, 20, 30, 40, np.nan])

配列を表示する-

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

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

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

データ型を取得-

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

NaNをゼロとして扱う、特定の軸上の配列要素の累積合計を返すには、nancumprod()メソッドを使用します。 NaNが検出され、先頭のNaNがゼロに置き換えられても、累積合計は変化しません。 all-NaNまたは空のスライスの場合はゼロが返されます-

print("\nCumulative Sum of array elements...\n",np.nancumsum(arr))

import numpy as np

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

# 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 sum of array elements over a given axis treating NaNs as zero, use the nancumprod() method
# The cumulative sum does not change when NaNs are encountered and leading NaNs are replaced by zeros.

print("\nCumulative Sum of array elements...\n",np.nancumsum(arr))

出力

Our Array...
[10. 20. 30. 40. nan]

Dimensions of our Array...
1

Datatype of our Array object...
float64

Cumulative Sum of array elements...
[ 10. 30. 60. 100. 100.]

  1. Pythonプログラムで配列の合計を見つける

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −配列の合計を計算するために必要な配列が与えられます。 合計を取得するために各インデックスで配列と要素全体をトラバースするブルートフォースアプローチについては、以下で説明します。合計を取得するための各インデックスについては、以下で説明します。 例 # sum function def sum_(arr,n):    # using built-in function    return(sum(arr)) # main arr = [11,22,33,44,55,66

  2. 配列の合計を見つけるPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 入力として配列が与えられた場合、与えられた配列の合計を計算する必要があります。 ここでは、ブルートフォースアプローチに従うことができます。つまり、リストをトラバースし、各要素を空の合計変数に追加します。最後に、合計の値を表示します。 以下で説明するように、組み込みの合計関数を使用して別のアプローチを実行することもできます。 例 # main arr = [1,2,3,4,5] ans = sum(arr,n) print ('Sum of the array is '