Python入門トップページ


目次

  1. Pandas とは
  2. Pandas を利用するための準備
  3. CSV ファイルを読み込む
  4. DataFrame を表示する
  5. 列や行を抽出する
  6. 列名を抽出する
  7. Python リストに変換する
  8. Python リストから DataFrame に変換する
  9. DataFrame から NumPy 配列に変換する
  10. 基本統計量を出力する
  11. CSV ファイルに書き出す
  12. グループ化とピボットテーブル
  13. データフレームの結合(系列名が等しいとき)
  14. データフレームの結合(系列名が異なるとき)
  15. データフレームの連結

Pandas

DataFrame から NumPy 配列に変換する

まずは準備として GitHub のリポジトリにあるサンプルデータ (clustering-sample.csv) を読み込む.(なお,ここでのサンプルを実行するだけなら numpy をインポートする必要はありませんが,通常はその後に NumPy 配列を使って何らかの処理をするはずです.)

CSVファイルを読み込むimport pandas as pd
import numpy as np
url = "https://github.com/rinsaka/sample-data-sets/blob/master/clustering-sample.csv?raw=true"
df = pd.read_csv(url)
print(df)
      ID       x       y
0      0  7.4346  6.6520
1      1  6.5419  6.3611
2      2  8.9819  9.2461
3      3  3.8554  4.8386
4      4  1.9527  3.4848
..   ...     ...     ...
295  295  4.1205  1.5010
296  296  9.2843  1.7563
297  297  6.6627  7.3856
298  298  5.7654  6.0543
299  299  2.2411  1.0902

[300 rows x 3 columns]

Pandas の DataFrame を NumPy 配列に変換するには .values を使います.データフレームからx列だけ取り出して,1次元のNumPy配列(ベクトル)に変換する.

1次元配列に変換するx = df.loc[:, 'x' ].values
print(x)
[7.4346 6.5419 8.9819 3.8554 1.9527 ...(中略)... 4.1205 9.2843 6.6627 5.7654 2.2411]

データ型を確認してみる.

データ型を確認するtype(x)
numpy.ndarray

要素のデータ型も確認する.

データ型を確認するx.dtype
dtype('float64')

データフレームからx列とy列を取り出して,2次元のNumPy配列(行列)に変換する.

2次元配列に変換するxy = df.loc[:, ['x', 'y']].values
print(xy)
[[7.4346 6.652 ]
 [6.5419 6.3611]
 [8.9819 9.2461]
 [3.8554 4.8386]
 [1.9527 3.4848]

...(中略)...

 [4.1205 1.501 ]
 [9.2843 1.7563]
 [6.6627 7.3856]
 [5.7654 6.0543]
 [2.2411 1.0902]]

データ型を確認してみる.

データ型を確認するtype(xy)
numpy.ndarray

要素のデータ型も確認する.

データ型を確認するxy.dtype
dtype('float64')

目次に戻る