code: @Override
      protected LofDataSet mergeState(LofDataSet baseDataSet, LofDataSet targetDataSet,
              Map<String, Object> mergeConfig)
      {
          int kn = Integer.parseInt(mergeConfig.get(LofConfKey.KN).toString());
          int maxDataCount = Integer.parseInt(mergeConfig.get(LofConfKey.MAX_DATA_COUNT).toString());
  
          // 学習データの保持する対象点を新しい方から最大保持数個だけ取得
          LofDataSet mergedDataSet = LofCalculator.mergeDataSet(baseDataSet, targetDataSet,
                  maxDataCount);
  
          // 中間データ保持設定が存在しない場合は中間データの生成は行わない。
          if (mergeConfig.containsKey(LofConfKey.HAS_INTERMEDIATE) == false)
          {
              return mergedDataSet;
          }
  
          // 中間データ保持設定が存在し、かつ「true」の場合のみ中間データの生成を行う。
          if (Boolean.getBoolean(mergeConfig.get(LofConfKey.HAS_INTERMEDIATE).toString()) == true)
          {
              LofCalculator.initDataSet(kn, mergedDataSet);
          }
  
          return mergedDataSet;
      }
docs: データモデルのマージを行う。<br>
  ベースにしたデータモデルに指定したデータモデルをマージする。
  
  @param baseDataSet マージ元データモデル
  @param targetDataSet マージ対象データモデル
  @param mergeConfig マージ設定
  @return マージ元データモデルにマージ対象データモデルをマージした結果データモデル