Importowanie plików płaskich za pomocą NumPy

Wprowadzenie do importowania danych w Pythonie

Hugo Bowne-Anderson

Data Scientist at DataCamp

Dlaczego NumPy?

  • Tablice NumPy: standard przechowywania danych numerycznych

 

ch_1_3.003.png

Wprowadzenie do importowania danych w Pythonie

Dlaczego NumPy?

  • Tablice NumPy: standard przechowywania danych numerycznych
  • Niezbędne dla innych pakietów: np. scikit-learn ch_1_3.004.png
  • loadtxt()
  • genfromtxt()
Wprowadzenie do importowania danych w Pythonie

Importowanie plików płaskich za pomocą 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.]]
Wprowadzenie do importowania danych w Pythonie

Dostosowywanie importu 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: liczba wierszy (nie indeksów) do pominięcia
Wprowadzenie do importowania danych w Pythonie

Dostosowywanie importu 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: lista indeksów kolumn do zachowania
Wprowadzenie do importowania danych w Pythonie

Dostosowywanie importu NumPy

data = np.loadtxt(filename, delimiter=',', dtype=str)
Wprowadzenie do importowania danych w Pythonie

Mieszane typy danych

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 Źródło: Kaggle
Wprowadzenie do importowania danych w Pythonie

Mieszane typy danych

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 Źródło: Kaggle
Wprowadzenie do importowania danych w Pythonie

Czas na ćwiczenia!

Wprowadzenie do importowania danych w Pythonie

Preparing Video For Download...