Python で 豪ドル/円チャ-ト を探求
予測日/予測値の一覧表を作成
ここまでで、
豪ドル/円 CSV ダウンロ-ドデ-タをロ-ソク足表示するための X 軸目盛りの準備ができました。
引き続き、予測日とその予測値の一覧表をつくるための CSV ファイルを作成します。
Numpy polyfit 関数で豪ドル/円を予測
のなかで、Numpy polyfit 関数 Python 多項式フィッティング
を用いて豪ドル/円を予測しました。
フィッティング結果(予測値)は、np.poly1d() 関数で求めることができ
p = np.poly1d(z)
このままだと小数点以下が長く見にくいので、
Numpy round 関数を使ってこれを小数点以下3桁の数値に整形して
np.round(p(Idx5),3)
がその予測値でした。
取り敢えず、これを
p_pand = np.round(p(Idx5),3)
としましょう。
一方、これに対応する予測日は
予測最終日取得
から、lastday[0] に予測最終日までの5日間が 年/月/日 の文字列型で入っています。
よって、この二つの配列を一緒にして CSV ファイルにすることができれば
「予測日/予測値 一覧」
にすることができます。
予測日/予測値の配列を合体
2つの配列を pandas concat 関数を使用して横(列)方向へ連結することにします。
まずは、それぞれの配列を DataFrame 型に変換します。
これで、pandas で操作することが可能になりました。
import pandas as pd
lastday_pd = pd.DataFrame(lastday[0])
p_pand_pd = pd.DataFrame(p_pand)
この2つを pandas concat 関数で横(列)方向へ連結します。
横(列)方向指定 axis = 1 を忘れないでください。
df_concat = pd.concat([lastday_pd, p_pand_pd], axis = 1)
これを csv ファイルとして保存します。
保存するファイルフォルダ名は絶対パスで指定します。
そして、header=False, index=False
としてヘッダとインデックスは保存なしとします。
df_concat.to_csv(
'/home/yamada/public_html/manep-img/mane_chart_go.csv', header=False, index=False)
豪ドル/円 予測日/予測値 表示
保存した「予測日/予測値」CSV ファイルを利用してその一覧表を表示します。
「予測日/予測値」の表題を表示します。
<table>
<tr>
<th>年月日</th>
<th>予測値(円)</th>
</tr>
ちょっと面倒なのは、
今後5日間の予測値を表示するところだと思います。
これには、PHP を使用します。
CSV ファイルをオ-プンして
$f = fopen("manep-img/mane_chart_go.csv", "r");
1行づつデ-タを取りだし
while($line = fgetcsv($f))
さらに1づつデ-タを取りだし表示します。
for ($i=0; $i < count($line); $i++) {
echo "<td>" . $line[$i] . "</td>";
}
豪ドル/円 予測日/予測値 表示まとめ
以上をまとめると PHP ファイルは次のようになります。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>豪ドル/円 予測日/予測値 表示</title>
</head>
<body>
<h2>豪ドル/円 予測日/予測値 表示</h2>
<table>
<tr>
<th>年月日 </th>
<th>予測値(円)</th>
</tr>
<?php
$f = fopen("manep-img/mane_chart_go.csv", "r");
while($line = fgetcsv($f)) {
echo "<tr>";
for ($i=0; $i < count($line); $i++) {
echo "<td>" . $line[$i] . "</td>";
}
echo "</tr>";
}
fclose($f);
?>
</table>
</body>
</html>
ここまでで、予測日/予測値の準備ができました。
引き続きロ-ソク足本体の表示をしていきます。