Home » Python » pandasの使い方 » pandasのDataFrameのマイナス値をプラスに-DataFrame.abs()メソッド

pandasのDataFrameのマイナス値をプラスに-DataFrame.abs()メソッド

動作検証バージョン:Windows 11 Home + Python 3.10.6 + Jupyter Notebook 6.5.3 + pandas 2.0.1

「dataframe マイナスの値をプラスに python」
といった検索キーワードでアクセスがありました。

Pythonの外部ライブラリ「pandas」のDataFrameで、マイナスの値(負の値)をプラスの値(正の値)にするにはどうすればいいのかを調べていらしたのでしょうか。

[スポンサードリンク]

マイナスの値をプラスにして、プラスの値はプラスのままでいいのであれば、絶対値を求めれば良さそうです。

DataFrame全要素の絶対値を取得する

DataFrame.abs()メソッドを使えば、各要素の絶対値が求められます。

以下のコードを実行すると、DataFrame全要素の絶対値を取得できます。

import pandas as pd

sample_data = {
    'x':[1, -2, -3, 4],
    'y':[-0.4, 0.3, 0.2, -0.1],
}

df = pd.DataFrame(sample_data)

df_abs = df.abs()

jupyter notebookで確認すると、下図のとおりです。

全要素が数値でなければエラーに

全要素が数値でない場合にabs()メソッドを実行すると、エラーが発生します。

sample_data = {
    'x':[1, -2, -3, 'fuga'],
    'y':[-0.4, 0.3, 0.2, -0.1],
}

df = pd.DataFrame(sample_data)

元データに上記のように数値ではないデータが含まれているときに、

df_abs = df.abs()

を実行すると、

TypeError: bad operand type for abs(): 'str'

エラーとなります。

DataFrameの特定列の絶対値を取得する

全要素ではなく、特定の列の絶対値を取得することも可能です。

先ほどのコードにつづけて

y_abs = df['y'].abs()

を実行すると、下図のようにy列の絶対値を取得できます。

[スポンサードリンク]

Home » Python » pandasの使い方 » pandasのDataFrameのマイナス値をプラスに-DataFrame.abs()メソッド

「pandasの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.