2019年7月17日水曜日

開発環境

はじめての機械学習 (小高知宏(著)、オーム社)の第2章(パラメーター調整による学習)、2.2(パラメーター調整による時系列データの学習)、2.2.1(学習データセットの作成)、行の先頭に数字を付加をC言語ではなくPythonで取り組んでみる。

コード

Python 3

#!/usr/bin/env python3
import sys

if len(sys.argv) != 2:
    print(f'Usage: ./addnumber.py <初期値>', file=sys.stderr)
    sys.exit(1)

try:
    n = int(sys.argv[1])
except ValueError as err:
    print(err, file=sys.stderr)
    sys.exit(1)

for i, line in enumerate(sys.stdin, n):
    print(f'{i} {line}', end='')

入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

$ ./addnumber.py
Usage: ./addnumber.py <初期値>
$ ./addnumber.py a
invalid literal for int() with base 10: 'a'
$ ./addnumber.py 1 < data.txt
1 15.400000
2 15.900000
3 15.400000
4 15.000000
$ ./addnumber.py -1 < data.txt
-1 15.400000
0 15.900000
1 15.400000
2 15.000000
$ ./addnumber.py 100 < data.txt
100 15.400000
101 15.900000
102 15.400000
103 15.000000
$ cat data.txt
15.400000
15.900000
15.400000
15.000000
$ ./addnumber.py 1 < data.txt > lsmdata.txt
$ cat lsmdata.txt 
1 15.400000
2 15.900000
3 15.400000
4 15.000000
$ ./lsm.py < lsmdata.txt 
15.85
-0.16999999999999887
$ 

0 コメント:

コメントを投稿