Python
IPython
pandas
データ整形
pos

posデータの整形で、ipython使うときに使った事を走り書き

More than 1 year has passed since last update.


はじめに

バイトでぐちゃぐちゃのデータを整形しなければならなかったので、そのときのメモです

Rで一月ぐらいにやってた事の走り書きはこちらです。


import

スクリーンショット 2016-06-01 21.02.42.png

おなじみのデータ解析ツールのimport

スクリーンショット 2016-06-01 21.04.00.png

でも、多くのファイルにまたがるデータを扱う事が多いので,

globもimport!!


pandas

※今回、numpyについては書きません、すみません。

あくまで、データの整形です。names,headerなどはnampyのarrayを使ったほうがいいです。


ファイルの読み込み

data = pd.read_csv("ファイル名.csv")


  • pd.read_ファイル形式()でいろんなファイル形式に対応

  • header=-1でheaderを無くせます!

  • names = ['1','2','3']などつけると

datas = glob.glob('*')

大量のファイルがあるときはこれでディレクトリ内のファイル全て得られます。

pandasの場合呼び出したファイルはnumpyのarrayとなるのではなく、DataFrame型となります。

スクリーンショット 2016-06-01 21.25.35.png


列、行消去

邪魔な部分のそぎ落としです。

data.drop([1,2])

#行の消去
data.drop([1,2],axis=1)
#列の消去

このようにするとその行、列を消す事ができます。

スクリーンショット 2016-06-01 21.31.15.png


列行の結合

pd.concat([data[1],data[0]])

#行の結合
pd.concat([data[1],data[0]],axis=1)
#列の結合

ファイルやデータがたくさんあるときはこれが便利!

スクリーンショット 2016-06-01 21.40.16.png


欲しいデータを持つ行のみにする

欲しいデータだけにする!

data.query("1==2")

これで、1という名前の列の値が2のものだけにする事ができる。

スクリーンショット 2016-06-01 21.47.03.png


同じデータでくっつける

データの関係性を導き出すためのファイル成型時の必須!

pd.merge(data1, data, on='列の名前')

これで列の値が同じもの同士でデータをくっつけてくれる。

スクリーンショット 2016-06-01 21.56.45.png


最後に

ぶっちゃけデータ整形は忍耐が大事!

あとはforなどを使って一気にやるとすぐできます。

numpyのarrayと途中ファイルを作ったりしてうまく列、行の入れ替えなどはしやすいです。

欲しいデータを考えて、それに向かって頑張ってやっていきましょう。

拙いメモを読んでいただきありがとうございました。