目次
Pandas を使用した複数のフィールドのグループ化と差異の検索
データフレームの並べ替えとグループ化
差の計算
結果のデータフレーム
ホームページ バックエンド開発 Python チュートリアル Pandas で複数の Web サイトと国のスコアの差を計算するにはどうすればよいですか?

Pandas で複数の Web サイトと国のスコアの差を計算するにはどうすればよいですか?

Oct 31, 2024 pm 06:37 PM

How to Calculate Score Differences for Multiple Websites and Countries in Pandas?

Pandas を使用した複数のフィールドのグループ化と差異の検索

データセットを操作する場合、時間の経過に伴う、または異なるカテゴリにわたる値間の差異や変化を計算することが必要になることがよくあります。 Pandas では、groupby() 関数と diff() 関数を利用してこれらの計算を効率的に実行できます。

指定されたシナリオでは、さまざまな Web サイトのデータとさまざまな国のスコアを含む DataFrame があります。目標は、サイトの国の組み合わせごとに 1/3/5 日のスコア差を判断することです。

データフレームの並べ替えとグループ化

まず、データフレームをサイト、国、および基準で並べ替えます。日付列。並べ替えにより、類似したデータ ポイントが確実にグループ化され、差異の計算が容易になります。

<code class="python">df = df.sort_values(by=['site', 'country', 'date'])</code>
ログイン後にコピー

次に、groupby() 関数を使用して、データをサイトおよび国別にグループ化します。

<code class="python">grouped = df.groupby(['site', 'country'])</code>
ログイン後にコピー

差の計算

データがグループ化されたので、diff() 関数を使用してスコアの差を計算できるようになります。この関数は、グループ内の連続する行の差を計算します。

<code class="python">df['diff'] = grouped['score'].diff().fillna(0)</code>
ログイン後にコピー

diff() 関数は、デフォルトで欠損値を 0 で埋め、一貫性のある完全なデータセットを保証します。

結果のデータフレーム

結果のデータフレームには、元のデータと計算されたスコア差が含まれます。

         date    site country  score  diff
8  2018-01-01      fb      es    100   0.0
9  2018-01-02      fb      gb    100   0.0
5  2018-01-01      fb      us     50   0.0
6  2018-01-02      fb      us     55   5.0
7  2018-01-03      fb      us    100  45.0
1  2018-01-01  google      ch     50   0.0
4  2018-01-02  google      ch     10 -40.0
0  2018-01-01  google      us    100   0.0
2  2018-01-02  google      us     70 -30.0
3  2018-01-03  google      us     60 -10.0
ログイン後にコピー

このデータフレームは、サイト/国の組み合わせごとに、必要な 1/3/5 日のスコア差を提供します。

以上がPandas で複数の Web サイトと国のスコアの差を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

HTMLを解析するために美しいスープを使用するにはどうすればよいですか? HTMLを解析するために美しいスープを使用するにはどうすればよいですか? Mar 10, 2025 pm 06:54 PM

HTMLを解析するために美しいスープを使用するにはどうすればよいですか?

Pythonでの画像フィルタリング Pythonでの画像フィルタリング Mar 03, 2025 am 09:44 AM

Pythonでの画像フィルタリング

Pythonでファイルをダウンロードする方法 Pythonでファイルをダウンロードする方法 Mar 01, 2025 am 10:03 AM

Pythonでファイルをダウンロードする方法

Pythonを使用してテキストファイルのZIPF配布を見つける方法 Pythonを使用してテキストファイルのZIPF配布を見つける方法 Mar 05, 2025 am 09:58 AM

Pythonを使用してテキストファイルのZIPF配布を見つける方法

Pythonを使用してPDFドキュメントの操作方法 Pythonを使用してPDFドキュメントの操作方法 Mar 02, 2025 am 09:54 AM

Pythonを使用してPDFドキュメントの操作方法

DjangoアプリケーションでRedisを使用してキャッシュする方法 DjangoアプリケーションでRedisを使用してキャッシュする方法 Mar 02, 2025 am 10:10 AM

DjangoアプリケーションでRedisを使用してキャッシュする方法

TensorflowまたはPytorchで深い学習を実行する方法は? TensorflowまたはPytorchで深い学習を実行する方法は? Mar 10, 2025 pm 06:52 PM

TensorflowまたはPytorchで深い学習を実行する方法は?

Natural Language Toolkit(NLTK)の紹介 Natural Language Toolkit(NLTK)の紹介 Mar 01, 2025 am 10:05 AM

Natural Language Toolkit(NLTK)の紹介

See all articles