.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

数表の形式で保存されたデータを効率的に処理する機能を収録したライブラリ

操作するためのデータ構造と演算を提供
Pythonから簡単に利用できるSQLの代替)

詳細

準備

インストール

>pip install pandas

インポート

>>>import pandas as pd

Series

DataFrame

ファースト・ステップ(Series)

Series型は、一次元の配列のオブジェクト

生成

配列から

>>>pd.Series([3,7,10,13])
0     3
1     7
2    10
3    13
dtype: int64

npから

>>>numpy_array = np.array([3,7,10,13])
>>>pd.Series(numpy_array)
0     3
1     7
2    10
3    13
dtype: int64

アクセス

>>>x=pd.Series([3,7,10,13])

インデックス

>>>x[1]
7

抽出

配列

配列の取り出し

>>>x.values
array([ 3,  7, 10, 13], dtype=int64)

セカンド・ステップ(DataFrame?

DataFrame?型は、テーブル形式のデータ構造

生成

辞書型(ディクショナリ)から生成

>>> pd.DataFrame({
...      'xxx': ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff'], # 長さ: 6
...      'yyy': [20, 34, 50, 12, 62, 22], # 長さ: 6
...      'zzz':['AAA', 'BBB', 'CCC', 'DDD', 'EEE', 'FFF'] # 長さ: 6
... })
  xxx  yyy  zzz
0  aaa   20  AAA
1  bbb   34  BBB
2  ccc   50  CCC
3  ddd   12  DDD
4  eee   62  EEE
5  fff   22  FFF

アクセス

>>> df=pd.DataFrame({
...     'xxx': ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff'], # 長さ: 6
...     'yyy': [20, 34, 50, 12, 62, 22], # 長さ: 6
...     'zzz':['AAA', 'BBB', 'CCC', 'DDD', 'EEE', 'FFF'] # 長さ: 6
... })
>>> df
   xxx  yyy  zzz
0  aaa   20  AAA
1  bbb   34  BBB
2  ccc   50  CCC
3  ddd   12  DDD
4  eee   62  EEE
5  fff   22  FFF

先頭・後尾

インデックス

(行列指定)

行指定(≒ 選択)

列指定(≒ 射影)

編集

行追加

>>>row=pd.DataFrame({
           'xxx': 'ggg',
           'yyy': [45],
           'zzz': 'GGG'})

>>> df=pd.concat([df,row],axis=0)
>>> df
   xxx  yyy  zzz
0  aaa   20  AAA
1  bbb   34  BBB
2  ccc   50  CCC
3  ddd   12  DDD
4  eee   62  EEE
5  fff   22  FFF
0  ggg   45  GGG
>>>df.index=np.arange(len(df)) # インデックス再設定
>>> df
   xxx  yyy  zzz
0  aaa   20  AAA
1  bbb   34  BBB
2  ccc   50  CCC
3  ddd   12  DDD
4  eee   62  EEE
5  fff   22  FFF
6  ggg   45  GGG

列追加

>>>df['@@@']=['@1','@2','@3','@4','@5','@6','@7']
>>>df
   xxx  yyy  zzz @@@
0  aaa   20  AAA  @1
1  bbb   34  BBB  @2
2  ccc   50  CCC  @3
3  ddd   12  DDD  @4
4  eee   62  EEE  @5
5  fff   22  FFF  @6
6  ggg   45  GGG  @7

行削除

>>>df=df.drop(2,axis=0)
>>> df
   xxx  yyy  zzz @@@
0  aaa   20  AAA  @1
1  bbb   34  BBB  @2
3  ddd   12  DDD  @4
4  eee   62  EEE  @5
5  fff   22  FFF  @6
6  ggg   45  GGG  @7

列の削除

df=df.drop('yyy',axis=1)

df

   xxx  zzz @@@
0  aaa  AAA  @1
1  bbb  BBB  @2
3  ddd  DDD  @4
4  eee  EEE  @5
5  fff  FFF  @6
6  ggg  GGG  @7

列名の変更

>>>df.columns=['XXX','YYY','ZZZ']
>>>df
   XXX  YYY ZZZ
0  aaa  AAA  @1
1  bbb  BBB  @2
3  ddd  DDD  @4
4  eee  EEE  @5
5  fff  FFF  @6
6  ggg  GGG  @7

列名の変更

参考


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS