使用 NumPy 匯入平面檔

Python 資料匯入入門

Hugo Bowne-Anderson

Data Scientist at DataCamp

為什麼用 NumPy?

  • NumPy 陣列:數值資料的標準儲存方式

 

第 1 章第 3 張圖

Python 資料匯入入門

為什麼用 NumPy?

  • NumPy 陣列:數值資料的標準
  • 其他套件必備:例如 scikit-learn 第 1 章第 4 張圖
  • loadtxt()
  • genfromtxt()
Python 資料匯入入門

使用 NumPy 匯入平面檔

import numpy as np
filename = 'MNIST.txt'
data = np.loadtxt(filename, delimiter=',')
data
[[   0.    0.    0.    0.    0.]
 [  86.  250.  254.  254.  254.]
 [   0.    0.    0.    9.  254.]
 ..., 
 [   0.    0.    0.    0.    0.]
 [   0.    0.    0.    0.    0.]
 [   0.    0.    0.    0.    0.]]
Python 資料匯入入門

自訂 NumPy 匯入

import numpy as np
filename = 'MNIST_header.txt'
data = np.loadtxt(filename, delimiter=',', skiprows=1)
print(data)
[[   0.    0.    0.    0.    0.]
 [  86.  250.  254.  254.  254.]
 [   0.    0.    0.    9.  254.]
 ..., 
 [   0.    0.    0.    0.    0.]
 [   0.    0.    0.    0.    0.]
 [   0.    0.    0.    0.    0.]]
  • skiprows:要跳過的列數(不是索引)
Python 資料匯入入門

自訂 NumPy 匯入

import numpy as np
filename = 'MNIST_header.txt'
data = np.loadtxt(filename, delimiter=',', skiprows=1, usecols=[0, 2])
print(data)
[[   0.    0.]
 [  86.  254.]
 [   0.    0.]
 ..., 
 [   0.    0.]
 [   0.    0.]
 [   0.    0.]]
  • usecols:欲保留欄的索引清單
Python 資料匯入入門

自訂 NumPy 匯入

data = np.loadtxt(filename, delimiter=',', dtype=str)
Python 資料匯入入門

混合資料型別

titanic.csv

                        Name      Sex  Cabin   Fare
     Braund, Mr. Owen Harris     male    NaN    7.3
  Cumings, Mrs. John Bradley   female    C85   71.3
      Heikkinen, Miss. Laina   female    NaN    8.0
Futrelle, Mrs. Jacques Heath   female   C123   53.1
    Allen, Mr. William Henry     male    NaN   8.05


1 來源:Kaggle
Python 資料匯入入門

混合資料型別

titanic.csv

                        Name      Sex  Cabin   Fare
     Braund, Mr. Owen Harris     male    NaN    7.3
  Cumings, Mrs. John Bradley   female    C85   71.3
      Heikkinen, Miss. Laina   female    NaN    8.0
Futrelle, Mrs. Jacques Heath   female   C123   53.1
    Allen, Mr. William Henry     male    NaN   8.05
               ^                                 ^
            strings                           floats
1 來源:Kaggle
Python 資料匯入入門

一起來練習吧!

Python 資料匯入入門

Preparing Video For Download...