JavaScript における加重平均の計算

JavaScriptJavaScriptBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、JavaScriptを使って2つ以上の数値の加重平均を計算する方法を探ります。Array.prototype.reduce() メソッドを使って値の加重和と重みの和を作成し、それらを互いに割って加重平均を求めます。この実験では、加重平均の概念とそれをJavaScriptで実装する方法を理解するのに役立ちます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28695{{"JavaScript における加重平均の計算"}} javascript/data_types -.-> lab-28695{{"JavaScript における加重平均の計算"}} javascript/arith_ops -.-> lab-28695{{"JavaScript における加重平均の計算"}} javascript/comp_ops -.-> lab-28695{{"JavaScript における加重平均の計算"}} javascript/array_methods -.-> lab-28695{{"JavaScript における加重平均の計算"}} javascript/higher_funcs -.-> lab-28695{{"JavaScript における加重平均の計算"}} end

JavaScriptで加重平均を計算する方法

JavaScriptで2つ以上の数値の加重平均を計算するには、次の手順に従います。

  1. ターミナル/SSHを開き、コーディングを練習するために node と入力します。
  2. Array.prototype.reduce() を使って値の加重和と重みの和を作成します。
  3. 値の加重和を重みの和で割って加重平均を求めます。

以下は、weightedAverage 関数のJavaScriptコードです。

const weightedAverage = (nums, weights) => {
  const [sum, weightSum] = weights.reduce(
    (acc, w, i) => {
      acc[0] = acc[0] + nums[i] * w;
      acc[1] = acc[1] + w;
      return acc;
    },
    [0, 0]
  );
  return sum / weightSum;
};

次のように、weightedAverage 関数を使って数値の配列と重みの配列の加重平均を計算できます。

weightedAverage([1, 2, 3], [0.6, 0.2, 0.3]); // 1.72727

まとめ

おめでとうございます!あなたは加重平均の実験を完了しました。あなたのスキルを向上させるために、LabExでさらに多くの実験を練習できます。