勉強中のPythonでダイアログで選択したCSVの情報を取得する方法を備忘録も兼ねて残しておきたいと思います。
コードの紹介
それではコードを紹介します。
ちなみに今回使用しているデモデータは下記URL先で簡単に作れます。
個人情報テストデータジェネレーター
アプリケーションのテストなどで利用できる、リアルな架空の個人情報データ(疑似データ)を生成するツールです。
from tkinter import filedialog
from tkinter import messagebox
import pandas as pd
import sys
typ = [("data files","*.csv;")]
dir = "C:\\pg"
file = filedialog.askopenfilename(filetypes = typ, initialdir = dir,title="開きたいCSVファイルを選択してください。")
if file == "":
messagebox.showerror("メッセージ","ファイルが選択されていません。\n処理を終了します。")
sys.exit()
else:
df = pd.read_csv(file)
df
実行するとファイルを選択するダイアログが開くので、CSVを選択するとその中身がDataFrameに格納されます。
ファイルを選択せずに閉じるとアラートが表示され、処理が終了します。
コードについてざっくりまとめると以下のような流れになります。
typ = [("data files","*.csv;")]
で選択するファイル形式を指定dir = "C:\\pg"
でデフォルトのディレクトリを指定filedialog.askopenfilename(...)
でダイアログを開いて選択したファイルパスをfile
に格納pd.read_csv(file)
で取得したファイルを読み込み、df
(DataFrame)に格納
#ファイル形式を指定
typ = [("data files","*.csv;")]
#デフォルトのディレクトリを指定
dir = "C:\\pg"
#ダイアログを開き、選択したファイルのパスを格納
file = filedialog.askopenfilename(filetypes = typ, initialdir = dir,title="開きたいCSVファイルを選択してください。")
...
#取得したファイルを読み込み、DataFrameに格納
df = pd.read_csv(file)
df
まとめ
今回はダイアログで選択したCSVの情報を取得する方法を紹介しました。
このブログではExcel・PCに関する記事も不定期で投稿していますので、是非併せてご覧ください!
コメント