【Pandas】 DataFrame で2行の列ごとの差を計算する方法【Python】
今回は、Pandas の DataFrame で、2行間の列ごとの値の差を計算し、その結果を DataFrame で取得する方法について紹介します。
以下のような DataFrame が2つ(df_1, df_2)あったとします。
この df_1, df_2 の各列の差を計算します。
まず、2つの DataFrame を「concat」関数を使って結合します。
1 2 |
import pandas as pd df_pair = pd.concat([df_1, df_2]) |
結合してできた2行の差を「diff」関数を使って取得します。
1 |
df_pair.diff() |
diff 関数では、各行の1つ前の行との差を求めるので、1行目はすべての列の値が NaN になっています。
1行目を削除します。dropna(how=’all’)とすることで、全ての値が欠損値(NaN)の行を削除することができます。
1 |
df_pair.diff().dropna(how='all') |
これで全ての値が欠損値(NaN)の行を削除できました。
関連記事
-
【Python】Windows で ライブラリ(NumPy) をインストールする方法。
Windows の Python(2.X系)で NumPy をインストールしようと思ったら、そもそも
-
【Python】漢字を分解するライブラリを使ってみた【部首分解】
Python で漢字を部首やさらに細かい部分に分解してくれるライブラリがあったので使ってみました。
-
【Python】 複数の辞書型の同じ key を持つ value を計算に用いる方法。
Python で、複数の辞書型を読み込んで、同じキー(key)を持つ数値(value)を計算に使う方
-
【Pandas】 loc・ilocで1行のみ Series ではなく DataFrame で抽出する方法。
Python の Pandas で DataFrame から loc や iloc を使って行を抽出
-
【OpenCV】画像の顔部分を検出する方法【Python】
OpenCV を使って、Python で画像から顔部分の検出を行ったときのメモです。 Anac
-
【Python】機械学習のために SciPy・Matplotlib・scikit-learn をインストール。
Python で機械学習を行うために、Windows OS の python 2 系にライブラリ「S
-
【Python】プログレスバーを表示させる【tqdm】
Python でスクリプトの実行時間が長くなると、進捗状況が知りたくなったので、標準出力にどのくらい
-
【Linux】 ローカルに Python をインストールする方法。
今回は、Linux サーバに、root 権限なしで、ローカルに Python をインストールした方法
-
【Pandas】 DataFrame のインデックスを置き換える方法【Python】
今回は、Pandas の DataFrame型で、インデックス(index)を分かりやすいものに置き
-
【Python】OpenCV を使って顔画像を検出してみた。
OpenCV のインストール Numpy のインストール [crayon-67936d242