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

PythonでNaNをゼロに置き換え、無限大を大きな有限数に置き換えます


NaNをゼロに置き換え、無限大を大きな有限数に置き換えるには、Pythonのnumpy.nan_to_num()メソッドを使用します。このメソッドは、非有限値が置き換えられたxを返します。 copyがFalseの場合、これはx自体である可能性があります。最初のパラメーターは入力データです。 2番目のパラメーターはコピーです。xのコピーを作成するか(True)、値をインプレースで置き換えるか(False)。インプレース操作は、配列へのキャストにコピーが必要ない場合にのみ発生します。デフォルトはTrueです。

3番目のパラメーターはnanで、NaN値を埋めるために使用される値です。値が渡されない場合、NaN値は0.0に置き換えられます。 4番目のパラメーターposinfは、正の無限大値を埋めるために使用される値です。値が渡されない場合、正の無限大の値はに置き換えられます。 5番目のパラメーターneginfintは、負の無限大値を埋めるために使用される値です。値が渡されない場合、負の無限大の値は非常に小さい(または負の)数値に置き換えられます。

ステップ

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

import numpy as np

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

arr = np.array([np.inf, -np.inf, np.nan, -128, 128])

配列を表示する-

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

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

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

データ型を取得-

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

形をとる-

print("\nShape of our Array object...\n",arr.shape)

NaNをゼロに置き換え、無限大を大きな有限数に置き換えるには、Pythonでnumpy.nan_to_num()メソッドを使用します-

print("\nResult...\n",np.nan_to_num(arr))

import numpy as np

# Creating a numpy array using the array() method
arr = np.array([np.inf, -np.inf, np.nan, -128, 128])

# 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)

# Get the Shape
print("\nShape of our Array object...\n",arr.shape)

# To replace NaN with zero and infinity with large finite numbers, use the numpy.nan_to_num() method in Python

# The method returns, x, with the non-finite values replaced. If copy is False, this may be x itself.
print("\nResult...\n",np.nan_to_num(arr))

出力

Our Array...
[ inf -inf nan -128. 128.]

Dimensions of our Array...
1

Datatype of our Array object...
float64

Shape of our Array object...
(5,)

Result...
[ 1.79769313e+308 -1.79769313e+308 0.00000000e+000 -1.28000000e+002 1.28000000e+002]

  1. PythonPandas-DataFrame内のすべてのNaN要素を0に置き換えます

    NaN値を置き換えるには、fillna()メソッドを使用します。以下が、いくつかのNaN値を使用してMicrosoftExcelで開いたCSVファイルであるとしましょう- まず、必要なライブラリをインポートします- import pandas as pd CSVファイルからPandasDataFrameにデータをロードする- dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesData.csv") fillna()メソッドを使用してNaN値を0に置き換えます- dataFrame.fillna(0)

  2. 正の数と負の数を再配置するPythonのLambda式

    この記事では、正と負の整数の入力配列を受け取るラムダ式の使用について学習します。 1つは負の数を含み、もう1つは正の数を含む2つの別々の配列を計算します。 ここでは、1つの引数、つまり整数の配列のみを受け入れるRearrange()関数を定義します。この関数は、配列の異なる側で各タイプとマージされた両方の配列を返します。 それでは、コードを見て理解を深めましょう。 例 def Rearrange(arr): # First lambda expression returns a list of negative numbers in arr. # Second lambda express