csvファイルの読み込み

ゆうき( @BASEBALLY15 )です^^

Pythonを使って,CSVファイルの保存先を自分で決めたいのですが,何か方法はないですか・・・?

ありますよ^^
それでは,今回は, csvファイルとディレクトリを作成し,
保存先を自分で決める方法をご紹介します.

よろしくお願いします・・・

CSVファイルとディレクトリの作成に関するご質問

Question

Jupiter notebookなどで,データフレームを作成してのですが,それをcsvファイルとして保存したいです.

また,保存先を自分で指定したいです.

Answer

今回は,csvファイルとディレクトリの作成に加えて,

csvファイルに新たにデータを追加する方法と,

画像を,作成したディレクトリに保存する方法についてご紹介します.

ライブラリ

まずは,ライブラリを用意します.

import pandas as pd

from pandas import Series, DataFrame

import numpy as np

#ランダムな数値を使うためのライブラリ
from numpy.random import randn

#ディレクトリを作成するために用意する
import os

import matplotlib.pyplot as plt

%matplotlib inline

次に,コードを記述していきたいと思います.

データフレームの作成

最初に,データフレームを作成します.

#データフレームを作成
df_list = pd.DataFrame({"Word": ["A", "B", "C", "D", "E", "F"], "Number": randn(6)})


#後で追加するためのデータフレームを作成
df_list2 = pd.DataFrame({"Word": ["G", "H", "I", "J", "K", "L"], "Number": range(1,7)})


#df_listを実行
df_list

すると,このように”Word”の列と”Number”の列が表示されます.

WordNumber
0A0.117678
1B0.290303
2C-0.333502
3D-0.706875
4E-0.458318
5F0.624240
#df_list2を実行
df_list2
WordNumber
0G1
1H2
2I3
3J4
4K5
5L6

次に,ディレクトリを作成していきます.

ディレクトリの作成

###ディレクトリの作成###
#ディレクトリの保存先を指定
dir_place = "C:/保存先(自分で指定する)/"

#ディレクトリ名
dir_name = "random"

#ディレクトリ全体
dir_all = dir_place + dir_name

#ディレクトリを作成
dir_file = os.makedirs(dir_all, exist_ok=True)

これで,指定した場所にディレクトリが作成されています.

ちなみに,

exist_ok=True

は,もし同じディレクトリがあった時に,その状態を保つことを意味します.

これが無いと,「ディレクトリが既に存在しています」というエラーが表示されます!

次に,csvファイルを作成します.

CSVファイルの作成と保存

#csvファイルの作成
csv_name = "random_numbers"

#csvファイルを作成
make_csv = df_list.to_csv(dir_all+ "/"+ csv_name+ ".csv")

#実行
make_csv

これで, csvファイルが作成され,ディレクトリの中に,保存されます.

次に,保存したcsvファイルに,新たにデータを上書きしたいと思います.

CSVファイルに新たにデータを保存

#df_list2も同じcsvファイルに保存する
make_csv = df_list2.to_csv(dir_all + "/" + csv_name + ".csv", mode="a", header=False)

ちなみに,

mode=”a

で,同じcsvファイルに保存することを意味しています.

また,

header=False

で,新たに保存するデータのカラムを追加せずに保存します.

保存した結果を表示してみたいと思います.

#csvファイルを読み込んでみる
data = pd.read_csv(dir_all+ "/"+ csv_name+ ".csv")

#実行
data
Unnamed: 0WordNumber
00A-0.018208
11B-3.245287
22C-2.400596
33D1.124592
44E-1.181418
55F-0.338005
60G1.000000
71H2.000000
82I3.000000
93J4.000000
104K5.000000
115L6.000000

このように,2つのデータが保存されています.

作成したディレクトリ内にグラフを保存

最後に,データフレームをプロットし,その画像を,作成したディレクトリ内に保存したいと思います.

#データフレームをプロットしてみる
plot_data = plt.plot(df_list["Word"], df_list["Number"], label="random")

plot_data2 = plt.plot(df_list2["Word"], df_list2["Number"], color="red", label="integer")

plt.xlabel("Word")

plt.ylabel("Number")

#凡例を表示
plt.legend()

#画像名
image = "random.png"

#画像の保存先を上で作成したデータフレームにする
plt.savefig(os.path.join(dir_all, image))

ちなみに,

os.path.join(保存先, 画像名)

というコードを記述することで,作成したディレクトリ内に画像を保存することができます.

これらの結果,以下のように作成したディレクトリ内にcsvファイルと画像を保存することができます.

csvファイルとディレクトリの作成

終わりに

今回は,Pythonでcsvファイルやディレクトリを作成しました.

データ分析をしていると,保存先を自分で決めたいときがあるので,

今回ご紹介した方法を使うと,すごく便利です.

ぜひ,みなさんも使ってみてください^^

それでは・・・

Q &A

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA