データを入力したい(TH1::Fill

1#include <TH1D.h>
2
3TH1D *h = new TH1D("h", "Data", 100, 0, 10);
4
5// 単一の値を入力
6h->Fill(5.5);
7
8// 重み付きで入力
9h->Fill(7.2, 2.5);

TH1::Fillメソッドでヒストグラムにデータポイントを追加します。 単一の値のほか、重み付きデータも指定できます。

1from ROOT import TH1D
2
3h = TH1D("h", "Data", 100, 0, 10)
4
5# 単一の値を入力
6h.Fill(5.5)
7
8# 重み付きで入力
9h.Fill(7.2, 2.5)

メソッドのシグネチャ

1Int_t Fill(Double_t x);
2Int_t Fill(Double_t x, Double_t w);

引数と戻り値

引数:

  • x - ヒストグラムに入力するデータ値

  • w - データの重み(オプション、デフォルト値は1)

戻り値:

  • ビン番号

    • 入力値がアンダーフロー時は0

    • オーバーフロー時はビン数+1

データを追加したい(Fill

 1#include <TH1D.h>
 2
 3TH1D *h = new TH1D("h", "Data", 100, 0, 10);
 4
 5// 単一の値を入力
 6h->Fill(5.5);
 7
 8// ループでデータを入力
 9for (Int_t i = 0; i < 1000; i++) {
10    h->Fill(gRandom->Gaus(5, 1));
11}

Fillメソッドで、ヒストグラムにデータを入力できます。

データの重みを追加したい(Fill

 1#include <TH1D.h>
 2
 3TH1D *h = new TH1D("h", "Data", 100, 0, 10);
 4
 5// 重み付きで入力
 6h->Fill(7.2, 2.5);  // 値7.2に重み2.5を追加
 7
 8// ループでデータを入力
 9for (Int_t i = 0; i < 1000; i++) {
10    h->Fill(gRandom->Gaus(5, 1), gRandomGaus(2, 1));
11}

Fillメソッドの第2引数に「重み」を指定できます。 重みを使うことで、1データポイントを複数の回数カウントしたのと同じ効果が得られます。 たとえば、Fill(7.2, 2.5)は値7.2を2.5回分カウントします。

「重み」は、データの信頼度や検出効率などを反映させるときに使用します。 重み付きデータでフィットを行う場合、この重みが統計的な重要度として考慮されるため、より正確な結果が得られます。