2009-06-25 14 views
20

これは以前に何度も解決した問題の1つだと確信しています。Excelでデータポイントを補間する

人々のグループが測定を行います(正確な家庭のエネルギー使用量)。 それらのすべては、異なる時間と異なる間隔でそれを行います。

だから、それぞれの人から得られるのは、セットに日付がない場合の{日付、値}の組です。

必要なのは、{日付、値}ペアの完全なセットです。値の範囲がわかっている日付ごとに(測定または計算された)値がわかります。 このプロジェクトでは、単純な線形補間で十分です。

私はそれがExcelで行われなければならないと仮定します。 このようなデータセットで補間する最良の方法は何ですか(毎日の値があります)。

ありがとうございました。

注:これらのデータセットが完成したら、私は傾き(1日あたりの使用量)を決定し、家庭から家への比較を開始することができます。

追加情報最初のいくつかの提案の後に: 穴が私の測定セット内にある場所を手動で特定したくありません(あまりにも多くの不完全な測定セット!!)。 私はそれのために自動的に何か(既存の)を探しています。私の入力が

{2009-06-01, 10} 
{2009-06-03, 20} 
{2009-06-06, 110} 

ある場合 だからそれから私は、自動的に

{2009-06-01, 10} 
{2009-06-02, 15} 
{2009-06-03, 20} 
{2009-06-04, 50} 
{2009-06-05, 80} 
{2009-06-06, 110} 

はい、私はこれを行うソフトウェアを書くことができますを得ることを期待します。私はちょうど誰かがこの(むしろ一般的な)問題のための "準備ができている"ソフトウェア(Excel)機能を既に持っていることを望んでいる。

+1

を見つけました。下の1つの回答に似ていますが、アドインを必要としないダウンロード可能な例があります(http://www.blueleafsoftware.com/Products/Dagra/LinearInterpolationExcel.php) – EvilDr

答えて

5

次のようにそれを行うための最も簡単な方法は、おそらくです:

  1. ダウンロードExcelアドインで、ここで:XlXtrFun™ Extra Functions for Microsoft Excel

  2. 使用関数intepolateを()。 =補間($ A $ 1:$ A $ 3 $ B $ 1:$ B $ 3 D1、FALSE、FALSE)A及びBは、あなたの入力を含むべきで、そしてカラムGは、すべての日付を含むべきである

列値。数式は列Eに入ります。

+0

ありがとうございます。私はこれをExcelの標準的な部分と期待していました。 これは私が必要とするものです。 –

+7

Xlxtrfunはダウンロードできなくなりました。 [Webサイトのエラー403メッセージ](http://www.xlxtrfun.com/cgi-bin/formmail/formmail.pl)を参照してください。 – davidbourguignon

+0

XLxtrfunを入手できる場所は誰にでも分かります。 –

5

LINESTTRENDという2つの機能があり、どちらを使用すると良い結果が得られるかを確認できます。彼らは、既知のXとYのセットを新しいX値と共に取得し、新しいY値を計算します。違いは、LINESTは単純な線形回帰を行い、TRENDはまず回帰を行う前にデータに合った曲線を見つけることです。

は、あなたの日付を取ると値のペアとExcelでXYグラフ(ない折れ線グラフ)を使用して、それらをグラフ化:あなたの補間された結果が収まるどれだけ参照するには

+0

ありがとうございましたヒント。 私はこれらの2つの機能を試してみましたが、明らかにこれらの機能の両方がすべてのデータポイントに1本の直線を描いています。 それは私が探していたものではありません。私の主な要件は、測定された点がそのままの状態であることです。これらの機能は、この要件を「中断」します。 –

+0

既知の入力に対して線形補間を行うために2点を使用します。したがって、8:30、9:00、10:00、10:30に測定した場合、9:30に測定を見積もりたい場合は、9:00と10:00の測定が必要ですLINEST関数ではなく、全体のセットです。最も近い2つの境界点を使用して、見積もりが必要な各データポイントに対してこれを実行します。 –

+5

おそらく私はあなたの提案を誤解しているかもしれませんが、これは私が手動で「穴がどこにあるか」を決定することを意味します。私は開発者であり、本質的に怠け者です。ソフトウェアでそれを理解してほしいです。 –

2

素敵なグラフィカルな方法。グラフ上で結果の線を右クリックし、[トレンドラインを追加]をクリックします。どの種類のカーブフィッティングが使用されるかを選択するためのさまざまなオプションがあります。次に、新しく作成したトレンドラインのプロパティに移動して、方程式とR-二乗値を表示することができます。

トレンドラインの方程式ラベルをフォーマットするときに、式の定数の有効桁がすべて表示されるように、数値の書式を高精度に設定するようにしてください。

29

アドインがインストールされていない人とシートを共有するのが難しくなるため、アドインを使用するのは嫌です。

私の職業人は、比較的コンパクトで(少しの魔法を使うのに高価な)きれいなフォーミュラを設計しました。注意すべき

もの:

  • 式により動作:値が検索される直前inputs範囲内の行を見つけるために、MATCH関数を用い

    • (例えば3であります値3.5の直前の値)
    • OFFSETsを使用して、その行の次の四角形を選択します(薄い紫色)
    • ただその2点を用いて線形補間を構築するためにFORECASTを使用して、その結果を取得
  • 外挿を行うことはできません。この式。検索値がエンドポイント間にあることを確認してください(極端な値を持つことによって、下の例でこれを行います)。

これはあまりにも複雑すぎるかどうかはわかりません。非常にポータブルであるという利点がありました(そして、多くの代替ソリューションより簡単です)。あなたが数式をコピー、貼り付けたい場合は

が、それは次のとおりです。

=FORECAST(F3,OFFSET(inputs,MATCH(F3,inputs)-1,1,2,1),OFFSET(inputs,MATCH(F3,inputs)-1,0,2,1

代わり

+2

+1すごく便利なハックです。コピー貼り用の数式はスクリーンショットの式と一致しませんが後者は正しいものです。前者には誤りがあります。私の場合は、 '= FORECAST(W33、OFFSET(T38:T59、MATCH(W33、S38:S59)-1,0,2,1)、OFFSET(S38:S59、MATCH(W33、S38:S59) -1,0,2,1)) 'ここで、S38:S59はx値を含み、T38:T59はy値を含む。 –

+0

ありがとう!数式を修正しました。 – YGA

+2

画像が壊れています。 –

1

inputsは、名前付き範囲です)。

=INDEX(yVals,MATCH(J7,xVals,1))+(J7-MATCH(J7,xVals,1))*(INDEX(yVals,MATCH(J7,xVals,1)+1)-INDEX(yVals,MATCH(J7,xVals,1)))/(INDEX(xVals,MATCH(J7,xVals,1)+1)-MATCH(J7,xVals,1)) 

j7はxの値です。

xvalsyvalsがyの値

コードにこれを置くことが容易の範囲であり、xの値の範囲です。

2

上記のYGAによる答えは、目的のX値が参照範囲のX値と同じである範囲終了のケースを処理しません。 YGAによって与えられた例を使用すると、Excelの式は#DIV/0を返します! 9999の補間値が要求された場合はエラーです。これは明らかにYGAが入力データ範囲に9999と-9999という極端なエンドポイントを追加し、すべての予測値がこれらの2つの数値の間にあると仮定している理由の一部です。そのような埋め込みが望ましくない、または可能でない場合、#DIV/0!を避ける別の方法!F3は、補間結果が望まれている値である

=IF(ISNA(MATCH(F3,inputs,0)),FORECAST(F3,OFFSET(inputs,MATCH(F3,inputs)-1,1,2,1),OFFSET(inputs,MATCH(F3,inputs)-1,0,2,1)),OFFSET(inputs,MATCH(F3,inputs)-1,1,1,1)) 

:エラーは、以下の式を使用して、正確な入力値の一致を確認することです。

注:これは元のYGA投稿にコメントとして追加しただけですが、まだ十分な評判ポイントがありません。

0

Excelの「トレンドライン」機能を使用して、データに最も適した数式を見つけることができます。その計算式を使用して、あなたはそれのために(挿入=>散布図)を線形散乱(XY)を作成します任意のx

  1. ためyを計算することができます。
  2. PolynominalまたはMoving Averageトレンドラインを作成するには、 "Display Equation on chart"(シリーズを右クリック>トレンドラインを追加)をチェックします。
  3. コピーセルに数式やx置き換える 'はA12下のスクリーンショットでは、ご希望のx値

で秒:A16はx保持年代を、B12:B16にはy年代を保持し、C12はyを計算する式が含まれています任意のxの場合

Excel Interpolation

私が最初に答えhere投稿が、後で私はちょうど今日、この上でつまずいこの質問

関連する問題