Pythonによるデータ分析・機械学習ブログ

Pythonによるデータの前処理・グラフ化、機械学習、統計解析、画像処理、Webスクレイピング、自然言語処理の基礎について紹介していきます。

MENU

【第9回】globを用いたファイル名のリストの取得

はじめに

フォルダ内にcsv形式やテキスト形式のデータが保存されていて、そのファイルを一つ一つ選択してデータ処理するのは、非常にめんどくさいですよね。ましてや10個や100個などなると非常に大変です。

そんな時に役立つのがglobと呼ばれるPythonのライブラリです。glob関数を使うことで特定のパターンにマッチするファイルを取得することができます。

本記事では、glob関数を使うことで特定のパターンにマッチするファイルを取得してファイル名を取得してDataFrame型のデータを読み込んで計算する方法を説明していきます。

SAMURAI TERAKOYA

globを用いたファイル名の取得

それでは、glob関数を使うことで特定のパターンにマッチするファイルを取得してファイル名を取得する方法を示します。

以下の例では、拡張子がcsvであるファイル名を取得して、ファイル名のリストを生成する方法を示しています。Pythonプログラムと同様のフォルダ内に「aaa、bbb、ccc、ddd」という名前のcsvファイルが保存されていて、以下のプログラムを実行すると、ファイル名のリストを取得することができます。

ここで「*」はワイルドカード文字と呼ばれるもので「任意の文字列」を表します。つまりは、「*.csv」のパターンを持つファイル名を取得します。

Input:

Output:

 

次に、glob関数を使うことで特定のパターンにマッチするファイルを取得してファイル名を取得してDataFrame型のデータを読み込んで計算する方法を説明していきます。

以下の例では、まず、拡張子がcsvであるファイル名を取得して、ファイル名のリストを取得しています。そして、for文でリストからファイル名を1つずつfilenameに格納してDataFrame型のデータを生成してカラム名「データ」の列の平均値を求めています。今回、filelistに4つのファイル名があるので、4回同じ処理をfor文で繰り返しています。

この処理は非常によく使用するので、ぜひマスターしましょう。

Input:

Output:

 

オススメ書籍

Pythonによるあたらしいデータ分析の教科書

Python3エンジニア認定データ分析試験の教科書にもなっている書籍で、データ分析に必要なPythonの基礎手法を身に付けることができます。具体的には、numpyとpandasを用いたデータの前処理、matplotlibを用いたデータのグラフ化、scikit-learnを用いた機械学習の基礎記述方法を身に付けることができます。これ一つで基礎はバッチリで、実務でも十分活用できると思います。個人的には見やすい書籍でした。

データサイエンス教本 Pythonで学ぶ統計分析・パターン認識・深層学習・信号処理・時系列データ分析

こちらの書籍は初心者から少し記述できるようになった人、かつ数学的な理論と一緒にPythonの記述方法を理解したい方にオススメです。統計分析、パターン認識、深層学習、信号処理、時系列データといった幅広く実務で使用する手法を学びたい方にもオススメです。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

こちらの基礎を抑えながら実務で必要なPython記述法を学べる書籍です。基礎を一つ一つ抑えるというよりも実務で活用できるように必要な知識を身に付けられると感じました。これ一冊あれば十分かなと思いました。

 

スキル修得&転職

 近年、DXの進展に伴うデジタル人材の需要の高まりに追いついていない状況が続いていると経済産業省がホームページで記載している通り、DX人材、IT人材が不足しているのが現状です。さらにコンピュータの性能向上やAI技術の発展により、よりDX人材、IT人材の需要が高まってきます。さらには、今後の長期間安定して職がある業種とも考えられます。

以下の求人では、IT業界の転職や、IT未経験だけどIT人材を志望する就活を支援してくれます。無料で会員登録もできるので、まずは登録だけでもして様子を見てみてはいかがでしょうか?

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

 

おわりに

本記事では、glob関数を使うことで特定のパターンにマッチするファイルを取得してファイル名を取得してDataFrame型のデータを読み込んで計算する方法を説明しました。この処理は非常によく使用するので、ぜひマスターしましょう。