python 基礎データフレームの作り方
pythonの勉強をしていくと、覚えるのが大変なので、
自分の備忘がてら基礎を整理していこうと思います。
今回はデータフレームの作り方を整理します。
データフレームとはpythonのpandasライブラリに含まれているオブジェクトの事です。
簡単に言うと2次元の表形式でデータを加工できます。
なぜpythonがデータサイエンティストでよく使われているかというと、このデータフレームがあるからなのでは?と思っています。
実際使い勝手がよく、DBを簡単に操作するようにデータを扱うことができるのがメリットです。
あと関数が直感的にわかりやすい!
ということで、今回はそのデータフレームの作り方の基本を整理します。
###python の基礎 データフレームの作り方 import pandas as pd import numpy as np #pd.DataFrame()を使って生成する。 #data,columns,indexを指定できる。 #dataはその名の通り設定したいデータを指定する。 #columnsは列名を指定する。 #indexは各行のindex名を指定する。(未指定だとデフォルトで番号が振られる。) #例①4行1列のデータを作る data = ["A1","B2","C3","C1"] df1 = pd.DataFrame(data=data, columns=['label'],index=['A','B','C','D']) print("df1:4行1列") print(df1) #例②1行4列のデータを作る data = [["A1","B2","C3","C1"]] df2 = pd.DataFrame(data=data, columns=['A','B','C','D'], index=['row0']) print("df2:1行4列") print(df2) #csvを取り込む #pd.read_csv関数を使う。 #ファイル名を指定すれば取り込める。 #カラム名やデータに日本語がある場合はshift-jisへ変換するのを忘れにように(文字化けする。) df_csv = pd.read_csv('input.csv',encoding='shift jis') print("df_csv:csvから取り込み") print(df_csv) #jsonファイルを取り込む #pd.read_json関数を使う。 #ファイル名を指定すれば取り込める。 #orientでjsonの取り込み形式が決まる。jsonの形式に応じて選択が必要。 #orient='dict':keyが列ラベル、valueが行ラベルと値になる ##{column:{index:value}} #orient='list':keyが列ラベル、valueが値になる 行名は失われる ##{column:[values}} #orient='series':keyが列ラベル、valueが行ラベルと値になるpndas.seriesになる。 ##{column:series(values)} #orient='split':keyが'index', 'columns', 'data'で、それぞれの値が行ラベル、列ラベル、値となる。 ##{index:[index],colums:[colmuns],data:[values]} #orient='records':keyが列ラベル、valueが値となるリストとする。行名の情報は失われる。 ##{{column:value},・・・,{column:value}} df_json = pd.read_json('input.json', orient='records') print("df_json:jsonから取り込み") print(df_json)
df1:4行1列
label
A A1
B B2
C C3
D C1
df2:1行4列
A B C D
row0 A1 B2 C3 C1
df_csv:csvから取り込み
A B
0 1 5
1 2 6
2 3 7
3 4 8
df_json:jsonから取り込み
A B
0 1 2
1 3 4
インプットファイルは以下です。
■input.csv
A | B |
---|---|
1 | 5 |
2 | 6 |
3 | 7 |
4 | 8 |
■input.json
[{"A":1,"B":2},{"A":3,"B":4}]