a572a77c4608b17123882a9b3dffb6ead39a9186
research/\343\201\252\343\202\223\343\201\241\343\202\203\343\201\243\343\201\246\351\226\242\346\225\260\345\236\213\343\203\227\343\203\255\343\202\260\343\203\251\343\203\237\343\203\263\343\202\260\343\201\247\347\240\224\347\251\266\343\201\256\343\202\263\343\203\274\343\203\211\343\202\222\346\233\270\343\201\223\343\201\206.md
... | ... | @@ -20,14 +20,14 @@ |
20 | 20 | - ただし、例外を発生させている時点で、純粋関数とは言えない。なので"なんちゃって関数型プログラミング"と呼んでいる。 |
21 | 21 | |
22 | 22 | ### 方針2: テスト付きの小さくて分かりやすい関数をたくさん作る |
23 | -- DataFrameを受け入れ、DataFrameを返すような関数を作る。 |
|
23 | +- DataFrameへの操作なら、DataFrameを受け入れてDataFrameを返すような関数を作る。 |
|
24 | 24 | - pandasの操作は自分で関数化し、それぞれunittestを追加する。 |
25 | 25 | - 最初は全てにテストを付ける必要は無い。 |
26 | 26 | - unittestを書いているとコーディング時間が2倍になってしまうかもしれない… |
27 | 27 | - しかしコードの間違いに気が付かず、間違いの判明が後になればなるほど差し戻しの影響が大きくなる。 |
28 | 28 | - できる限りテストを付けるのが大事である。 |
29 | -- 思ったよりも自分はPandasの挙動は把握できていない場合がある。 |
|
30 | - - 特にダウンサンプリング、アップサンプリングの挙動は難しい。 |
|
29 | +- 思ったよりも自分はPandasやPythonの挙動を把握できていない場合がある。 |
|
30 | + - 特にpandasのダウンサンプリング、アップサンプリングの挙動は難しい。 |
|
31 | 31 | - またpandasは多数の構文を許容するので、間違った構文でも動いてしまう可能性がある。(そして間違った結果がDataFrameに格納されて気が付かない。) |
32 | 32 | - ライブラリのバージョンアップを容易に出来る。 |
33 | 33 | - それぞれの関数にテストを付けてあれば、バージョンアップで挙動が変わらないことを保証できる。 |