問題タブ [binning]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonで一連のフロート値をヒストグラムにビン化する方法は?
float に値を設定しました (常に 0 未満)。ヒストグラムにビン化したいもの、つまり。ヒストグラムの各バーには、値の範囲 [0,0.150) が含まれます。
私が持っているデータは次のようになります。
以下の私のコードでは、次のような結果が得られると期待しています
私はこのコードでそのようなビニングをやろうとしました。しかし、うまくいかないようです。それを行う正しい方法は何ですか?
〜
mysql - ヒストグラムプロットのデータを取得する
MySQLでビンサイズを指定する方法はありますか?現在、次のSQLクエリを試しています。
生成されているデータは十分ですが、行が多すぎます。必要なのは、データを事前定義されたビンにグループ化する方法です。スクリプト言語からこれを行うことはできますが、SQLで直接行う方法はありますか?
例:
私が探しているもの:
これは簡単な方法では達成できないと思いますが、関連するストアドプロシージャへの参照も問題ありません。
matlab - このビニングと平均化を MATLAB で実行するにはどうすればよいですか?
ビニング平均を実行しようとしています。私はコードを使用しています:
最後の行は、大きさが 1 の次元を取り除きます。
ご覧のとおり、平均点は 300 点を超えています。ポイントの総数が 144*300 の倍数に等しくない場合を除いて、問題なく動作します。
ポイントの総数が 144*300 の倍数でない場合でも、このビニング平均を機能させる方法はありますか?
編集:私の質問が紛らわしかったら申し訳ありません。明確にするために...
43200 行 27 列のファイルがあります。一度に 300 行をビニングして平均化しています。つまり、最終的にサイズが144 行 27列の行列が残ります。
上記のコードは、正確に 43200 行ある場合にのみ機能します。場合によっては、43199、43194 などがあります。総行数が 300 (ビン サイズ) の倍数である場合、reshape 関数が機能します。行の総数が 300 の倍数でない場合に、このビニング平均を機能させる方法はありますか?
python - ポイントをビンに割り当てる
数値を特定の範囲にビン化する良い方法は何ですか? たとえば、値のリストがあり、それらを範囲ごとに N 個のビンにビン化したいとします。今、私は次のようなことをしています:
ここで、min_index は最小値のインデックスを返します。アイデアは、どのビンとの差が最も小さいかを確認することで、ポイントが該当するビンを見つけることができるということです。
しかし、これには奇妙なエッジケースがあると思います。私が探しているのは、ビンの適切な表現です。理想的には、半分閉じて半分開いているビンです (したがって、1 つのポイントを 2 つのビンに割り当てる方法はありません)。
numpy/scipyを使用してPythonでこれを行う良い方法は何ですか? ここでは、整数値のビニングのみに関心があります。
どうもありがとうございました。
gnuplot - gnuplotを使用したヒストグラム?
.datファイルにすでに適切にビニングされたデータがある場合は、gnuplotでヒストグラムを作成する方法を知っています(「ボックス付き」を使用するだけです)。数値のリストを取得し、gnuplotにユーザーが提供する範囲とビンサイズに基づいたヒストグラムを提供させる方法はありますか?
r - R を使用したビン化された GAM 結果の二乗平均平方根偏差
バックグラウンド
PostgreSQL データベースは PL/R を使用して R 関数を呼び出します。スピアマンの相関を計算するための R 呼び出しは次のようになります。
また、R では、当てはめられた一般化加法モデル (GAM) の単純な計算:
x
これは 1900 年から 2009 年までの年を表し、その年のy
平均測定値 (最低気温など) です。
問題
次の図に示すように、近似傾向線 (GAM を使用) はかなり正確です。
問題は、相関関係 (左下に表示) が、モデルがデータにどの程度適合しているかを正確に反映していないことです。
考えられる解決策
相関の精度を向上させる 1 つの方法は、ビニングされたデータに対して二乗平均平方根誤差 (RMSE) 計算を使用することです。
質問
Q.1. ビニングされたデータに RMSE 計算を実装して、R 言語で GAM の測定値への適合の相関関係 (0 と 1 の間) を取得するにはどうすればよいでしょうか?
Q.2. GAM のデータへの適合の精度を見つけるためのより良い方法はありますか? もしそうなら、それは何ですか (例えば、二乗平均平方根偏差)?
試行された解決策 1
- 観測量とモデル (GAM) 量を使用して PL/R 関数を呼び出します。/li>
- 次のように定義
plr_corr_rmse
します (ここでo
、 とm
は観測データとモデル化データを表します)。/li>
はo - m
間違っています。mean
5 つのデータ ポイントごとにを計算して、両方のデータ セットをビンに入れたいと思います(最大で 110 のデータ ポイントがあります)。例えば:
次に、RMSE の計算を次のように修正します。
適切な数のビンで任意の長さのベクトルを計算するにはどうすればよいでしょうかc( mean(o[1:5]), mean(o[6:10]), ... )
(たとえば、5 は 67 回の測定だけでは理想的ではない可能性があります)。
hist
ここにはふさわしくないと思いますよね?
試みられた解決策 2
次のコードは問題を解決しますが、リストの最後からデータ ポイントを削除します (リストを 5 で割り切れるようにするため)。数字の「5」は魔法のようなものなので、この解決策は理想的ではありません。
他にどのようなオプションがありますか?
前もって感謝します。
r - Rで事前にビン化されたヒストグラムをプロットする方法
かなり大きなデータセット用の事前にビニングされた頻度表があります。つまり、ビンの 1 つの列ベクトルと、それらのビンに関連付けられたカウントの 1 つの列ベクトルです。さらにビニングを行い、既存のカウントを合計して、R にこのデータのヒストグラムをプロットしてもらいたいと思います。たとえば、事前にビン化されたデータに [(0.01, 5000), (0.02, 231), (0.03, 948)] のようなものがある場合、最初の数値はビンで、2 番目の数値はカウントです。新しいビンの幅として 0.04 を選択すると、[(0.04, 6179)] になると思います。Rでこれを行うための最速かつ最も簡単な方法は何ですか?
sorting - MATLABでアイテムをビンに並べ替える
データYのセットとXを中心とするビンのセットがある場合、HISTコマンドを使用して、各ビンにある各Yの数を見つけることができます。
私が知りたいのは、各Yがどのビンに入るかを教えてくれる組み込み関数があるかどうかです。
Y(I == 1)がビン1のすべてのYを返すことを意味します。
私はこの関数の書き方を知っているので、MATLABにこれを行う組み込み関数がすでにあるかどうかだけ疑問に思っています。
python - numpy.digitizeは範囲外の値を返しますか?
次のコードを使用して、配列を16個のビンにデジタル化します。
ビンが16個あるので、出力は[1、16]の範囲にあると思います。ただし、返される配列の値の1つは17です。これはどのように説明できますか?