Jupyter notebook(Python3)を使ってみようと思っても慣れていないうちは、どうしても処理に躓いてしまうものです。
例えば、Pythonのpandas機能にてexcelとcsvを相互変換する際にはどのように処理すればいいのか理解していますか。
ここではこのpython(pandas)にてexcelとcsvを変換する方法についてサンプルコードを用いて解説していきます。
Pandasにてexcelからcsvへ変換する方法【Python】
Python(Pandas)にてexcelからcsvフィルへの変換を行うためには、
・read_excel関数にてexcelの読み込み後
・to_csvへ出力とすればいいです。
具体的なサンプルコードは以下の通りです。
df= pd.read_excel(‘sample1.xlsx’,encoding=”SHIFT JIS”)
df.to_csv(‘a.csv’, encoding=”utf-16″)
と行うことでexcelファイルを読み込んで、csvとして出力という流れで変換できます。
ディレクトリにexcelファイルがない場合はまずファイルがおいてあるディレクトリに移動してから上の操作を行いましょう。
なお私の場合、文字コードは上のよう読みこみ時は”SHIFT JIS”、出力時は”utf-16″となりましたが、あなたの形式に合わせて適宜変更するといいです。
特定列のみPandasにてexcelからcsvへ変換する方法【Python】
なお、特定列のみを出力していく際には、読み込み時にusecolsで指定するのではなく、出力時にcolumnsの引数で指定していくといきましょう。
と入れることで、出力ファイルに特定の列のみが書き出されました。
他にも、header=Noneとすればヘッダーを削除したcsvの出力、index=Noneとすればインデクスを消したcsvファイルに変換されます。
詳細はこちらのcsv出力時に特例の列のみを書き出す方法にて解説しているため参考にしてみてください。
Pandasにてcsvからexcelへ変換する方法【Python】
同様に、pythonにてcsvからexcelに変更する方法についても解説していきます。
基本的な流れとしては、上と同様で
・read_csv関数にてcsvファイルの読み込み後
・to_excelでexcelファイルへと出力すればいいです。
ソースコードは以下の通りです。
df= pd.read_csvl(‘sample1.csv’,encoding=”SHIFT JIS”)
df.to_excel(‘a2.xlsx’, encoding=”utf-16″)
この処理でcsvファイルをexceファイルへと変換できます。
引数を指定することによって、列を指定しcsvからexcelへの変換ができる
上と同じように、pandasにおけるexcelからcsvへの変換であっても、columnsやheader=None、index=Noneなどの引数を指定していくことで中身を変えてcsvとexcelの変換ができるので、適宜試してみてください。
まとめ Pandas(python)にてexcelとcsvを変換する方法
ここでは、jupyternotebook(python)のpandas機能によってexcelファイルとcsvファイルを変換する方法について解説しました。
・excelからcsvへの変換
→read_excelで読み込み、to_csvで出力
・csvからexcelへの変換
→read_csvlで読み込み、to_excelで出力
と指定するといいです。
Pandas(Python)での各種処理方法に慣れ、より効率的なデータ解析を行っていきましょう。
コメント