注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
2 つの time series に対して整列された (x,y) ポイントのリストを生成する関数を返します。
散布図は (x,y) 座標で構成されます。2 つの指定された time series に対して、(x,y) 座標はタイムスタンプが一致する各シリーズのポイントで構成されます。基になるシリーズのタイムスタンプが一致しないポイントには、構成された補間戦略が使用され、そのタイムスタンプでポイントが欠落しているシリーズに適用されます。
内部、before、after に対応する補間戦略については interpolate()
を参照してください。
さらに、回帰関数を渡して、グラフ内のポイントに最適なフィットラインを見つけることができます。
interpolate()
から (デフォルトは NONE
)interpolate()
から (デフォルトは LINEAR
)interpolate()
から (デフォルトは NONE
)linear_regression()
| polynomial_regression()
| exponential_regression()
, optional) – 回帰関数の出力。これにより、2 つの入力シリーズ間の最適なフィットライン (およびその他の関連メトリクス) のポイントが提供されます (デフォルトは回帰なし)。列名 | 型 | 説明 |
---|---|---|
is_truncated | bool | このフィールドは非推奨であり、無視する必要があります。 大規模なシリーズで出力が切り捨てられた場合。 |
points.first_value | float | 最初のシリーズのポイントの値。 |
points.second_value | float | 2 番目のシリーズのポイントの値。 |
points.timestamp | datetime | ポイントのタイムスタンプ。 |
regression.* | float | 回帰関数からの列 (回帰が使用されている場合)。 |
この関数は数値シリーズにのみ適用されます。
Copied!1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
>>> series_1 = F.points((11, 21.0), (13, 23.0), (15, 25.0), (17, 27.0), name="series-1") >>> series_2 = F.points((11, 21.0), (13, 23.0), (17, 37.0), (37, 47.0), name="series-2") >>> series_1.to_pandas() timestamp value 0 1970-01-01 00:00:00.000000011 21.0 1 1970-01-01 00:00:00.000000013 23.0 2 1970-01-01 00:00:00.000000015 25.0 3 1970-01-01 00:00:00.000000017 27.0 >>> series_2.to_pandas() timestamp value 0 1970-01-01 00:00:00.000000011 21.0 1 1970-01-01 00:00:00.000000013 23.0 2 1970-01-01 00:00:00.000000017 37.0 3 1970-01-01 00:00:00.000000037 47.0 >>> nc = NodeCollection([series_1, series_2]) # NodeCollectionにseries_1とseries_2を追加
Copied!1 2 3 4 5 6 7 8 9 10 11 12
>>> scatter_plot = F.scatter( # 補間を含む散布図 ... before="NEAREST", # 補間前の値は最近傍の値を使用 ... internal="LINEAR", # 内部補間は線形補間を使用 ... after="NEAREST", # 補間後の値は最近傍の値を使用 ... )(nc) >>> scatter_plot.to_pandas() is_truncated points.first_value points.second_value points.timestamp 0 False 21.0 21.0 1970-01-01 00:00:00.000000011 1 False 23.0 23.0 1970-01-01 00:00:00.000000013 2 False 25.0 30.0 1970-01-01 00:00:00.000000015 3 False 27.0 37.0 1970-01-01 00:00:00.000000017 4 False 27.0 47.0 1970-01-01 00:00:00.000000037
Copied!1 2 3 4 5 6 7 8 9 10 11 12 13
>>> lin_regression_scatter_plot = F.scatter( ... before="NEAREST", # 予測前に最も近いデータを使用 ... internal="LINEAR", # 線形補間を内部で使用 ... after="NEAREST", # 予測後に最も近いデータを使用 ... regression=F.linear_regression(), # 線形回帰を使用 ... )(nc) >>> lin_regression_scatter_plot.to_pandas() is_truncated points.first_value points.second_value points.timestamp regression.max_bounds.first_value regression.max_bounds.second_value regression.min_bounds.first_value regression.min_bounds.second_value regression.regression_fit_function.linear_regression_fit.intercept regression.regression_fit_function.linear_regression_fit.slope regression.regression_fit_function.linear_regression_fit.statistics.rsquared 0 False 21.0 21.0 1970-01-01 00:00:00.000000011 27.0 47.0 21.0 21.0 -59.926471 3.720588 0.827161 1 False 23.0 23.0 1970-01-01 00:00:00.000000013 27.0 47.0 21.0 21.0 -59.926471 3.720588 0.827161 2 False 25.0 30.0 1970-01-01 00:00:00.000000015 27.0 47.0 21.0 21.0 -59.926471 3.720588 0.827161 3 False 27.0 37.0 1970-01-01 00:00:00.000000017 27.0 47.0 21.0 21.0 -59.926471 3.720588 0.827161 4 False 27.0 47.0 1970-01-01 00:00:00.000000037 27.0 47.0 21.0 21.0 -59.926471 3.720588 0.827161
このコードは、線形回帰を用いた散布図を作成し、その結果をPandasデータフレームに変換しています。各行のデータには、線形回帰の結果として得られる切片、傾き、決定係数 (R²) が含まれています。