Імпорт плоских файлів за допомогою NumPy

Вступ до імпорту даних у Python

Hugo Bowne-Anderson

Data Scientist at DataCamp

Чому NumPy?

  • Масиви NumPy: стандарт зберігання числових даних

 

ch_1_3.003.png

Вступ до імпорту даних у Python

Чому NumPy?

  • Масиви NumPy: стандарт зберігання числових даних
  • Необхідні для інших пакетів: напр., scikit-learn ch_1_3.004.png
  • 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...