Python データサイエンス講座 vol.5
レクチャー25「テキストデータの読み書き」
→CSVファイル(Comma Separated Valuesの略だって初めて知った...)をDataFrameとして変換して出力する方法を学んだ。
レクチャー26「JSON」
→JSON(JavaScript Object Notationの略らしい)形式のデータをインポートする方法を学んだ。まずJSONを知らない私にはなんだかさっぱり。まぁこんなもんだろう。
レクチャー27「HTMLからのデータの取り出し」
HTMLデータを読み込んで、それをDataFrameとして表示する方法を学んだ。例えば、このウェブサイト(FDIC: Failed Bank List)から表を取り込んで表示させたい。そしてここでつまずいたのが私!この作業のために、beautiful-soupとhtml5libという外部パッケージをインストールする必要がある。私のパソコンはMacなので、Terminalを起動してそこからこれらをインストールした。そもそも、何かをTerminalからインストールしたことがない私には、この作業に時間が掛かった。beautiful-soupのインストールには問題はなかったが、html5libをインストールした前後辺りでどうしてもエラーが出る。まず最初に出たエラーが、
'module' object has no attribute '_base'
というもの。私の知識不足により、html5libをインストールできていなかったようで、きちんとインストールしたらこのエラーは消えた。だがしかし、つぎのエラーが。
lxml not found, please install it
じゃあインストールしてやろうじゃないのと、lxmlが何なのかも知らない私はそれをググり、そしてふたたびTerminalからlxmlをインストール。これでいけるかと思いきや、それでもエラーが出る。もう一体どうすりゃいいの、と諦めて次のレクチャーに進もうかと思っていたが、この講座を配信しているUdemyのウェブサイトにあるQ&Aを眺めていたら、「これらの外部パッケージの最新バージョンではなく1つ前の古いバージョンにダウングレードするとうまく場合がある」との情報を見つけた。そこでlxmlのバージョンを探して最新(3.6.1)ではなく1つ前(3.6.0)をインストールしたところ、ついにエラーが出なかった!そして表が上手く表示された!
なんだか不毛な時間を過ごしてしまった気が...。そして、こういう問題は私のような初学者にしか起こらないのか、はたまたそこそこ経験のあるプログラマーにも起こりうるのかが気になる。
レクチャー28「Excel形式のファイルを読み込む」
→エクセルファイルをDataFrameとして表示させる方法を学んだ。
〜〜〜〜〜〜〜〜〜〜〜
レクチャー27にかなりの時間が掛かってしまった。スピードアップして進めていきたい。