こんにちは,shun(@datasciencemore)です!
今回は,データの入出力についてやっていきます.
データの入力というのは,既存のデータを読み込んでデータフレームにすること
データの出力というのは,データフレームを指定したデータ形式にて書き出すこと
を表しています.
データ分析の基本的な流れは
① データを入力してデータフレームにする.
② ①で得たデータフレームを加工する.
③ ②で得たデータフレームを出力する.
となります.
イメージはこの図のとおりです.
1.csv入出力
データ分析をする際は,基本,元となるデータを読み込んでそれをデータフレームにする必要があります.
元となるデータ形式はjson, xlsx, csvと様々ですが,ここでは使用頻度の高いcsvファイルの読み込み方を説明します.
csvができれば他のデータ形式でも基本同じやり方なのでご安心ください.
以下の図がcsvの入出力のイメージとなります.
csvを入力,すなわち読み込むには,read_csvという関数を使用します.
そしてその読み込んだcsvはデータフレームとなります.
1 2 |
# csv入力 df = pd.read_csv("iris.csv") |
iris.csvというcsvファイルがカレントディレクトリにあることを前提としています.
iris.csvというcsvファイルをこちらから用意するのは難しいので,各自,適当なcsvを用意して上記のコードでcsvを読み込めるか確認いただければと思います.
csvを用意するのが難しい場合,下記のコードで直接,データをロードすることができます.
1 2 3 |
# データ入力(csvを用意できない場合) import statsmodels.api as sm iris = sm.datasets.get_rdataset("iris", "datasets").data |
我々は基本,そのデータフレームに何かしらの加工をします.
この例では新しい列を加えてみました.
1 2 |
# データフレーム加工(new列に"test"の文字列を追加) df_rev = df.assign(new = "test") |
そして,その加工したデータフレームを出力するには,to_csvという関数を使用します.
to_csvには,オプションとしてindex=Falseを使用したほうがいいと思います.
このようにすると出力時にインデックスが出力されません.
インデックスは邪魔になることが多いので,このように設定することをオススメします.
1 2 |
# csv出力 df_rev.to_csv("iris_rev.csv", index=False) |
2.データフレーム作成
さて,先程はcsvの入出力の方法を学習しました.
基本的にデータの入力は,既存のデータを読み込めばいいのですが,時々,小さなデータについては直接手動で作成することがあります.
そのような場合,どのようにするかというと,DataFrameという関数を使用します.
DataFrame関数の中に作成したいデータフレームを辞書で記述してあげればOKです.
ちなみに説明を簡単にするためにリストと記載しましたが,リストではなく,ベクトルなどの他の形式でもOKです.
ただ,一番使用するのがリストなので,まずはリストだと思っていただければ支障はないです.
まとめ
今回は,データの入出力として以下を学習しました.
- csv入出力
- データフレーム作成
どちらも重要ですが,特に1.csv入出力は実務で頻繁に利用します.
それでは,お疲れさまでした!
次回
-
【pandas】メソッドチェーン
こんにちは,shun(@datasciencemore)です! 今回は,メソッドチェーンについてやっていきます. メソッドチェーンを利用するときれいなコードを書くことができます. 目次0.メソッドチェ ...
続きを見る