データを追加したい(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)
重みを追加したい(TH1::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(
11 gRandom->Gaus(5, 1),
12 gRandomGaus(2, 1)
13 );
14}
Fillメソッドの第2引数には「重み」を設定できます。
重みを与えることで、1つのデータ点を複数回カウントしたのと同じ効果が得られます。
たとえば、Fill(7.2, 2.5)は値7.2を2.5回分カウントします。
「重み」はデータの信頼度や検出効率などを反映させるときに使用します。 重み付きデータでフィットを行う場合、この重みが統計的な重要度として考慮されるため、より正確な結果が得られます。