Indeksowanie i wycinanie
Część sekcji Dane i wykresy ścieżki Machine Learning w Coddy. Lekcja 8 z 60.
Indeksy tablic działają tak samo jak indeksy list — zaczynają się od 0. Pięć dni ćwiczeń gry na pianinie, w minutach:
practice = np.array([20, 0, 35, 15, 40])
print(practice[0]) # pierwszy
print(practice[-1]) # ostatni
print(practice[1:4]) # pozycje od 1 do 3To wypisuje:
20
40
[ 0 35 15]Tablica 2D przyjmuje w jednej parze nawiasów indeks wiersza i kolumny, najpierw wiersz. Każdy wiersz tablicy stock to sklep, a każda kolumna to produkt:
stock = np.array([[5, 8, 2, 6], [9, 1, 4, 3], [7, 0, 6, 8]])
print(stock[1, 2]) # jedna wartość
print(stock[0]) # cały wiersz
print(stock[:, 3]) # cała kolumnaTo wyświetla:
4
[5 8 2 6]
[6 3 8]W miejscu wiersza dwukropek oznacza każdy wiersz, a wycinek taki jak 0:2 — niektóre z nich. Zatem data[:, column] to jedna cecha dla każdej próbki.
Wyzwanie
ŁatwyRaport hotelu jest nieprawidłowy. bookings zawiera jeden wiersz na tydzień i jedną kolumnę na dzień, od poniedziałku do niedzieli. Program odczytuje tydzień i dzień, liczone od 1.
W każdym wierszu jest jeden błąd. Popraw je tak, aby pasowały do etykiet:
Week: cały tydzieńWeekend: jego dwa ostatnie dni, wycinekDay: ten dzień w każdym tygodniuBooked: ten jeden dzień
Dla tygodnia 3, dnia 5:
Week 3: [11 12 13 17 20 24 26]
Weekend: [24 26]
Day 5: [18 19 20 21]
Booked: 20Spróbuj swoich sił
import numpy as np
# Zarezerwowane pokoje w małym hotelu: jeden wiersz na tydzień (tygodnie od 1 do 4),
# jedna kolumna na dzień (dni od 1 do 7, od poniedziałku do niedzieli)
bookings = np.array([
[12, 15, 14, 16, 18, 25, 27],
[10, 13, 15, 14, 19, 26, 28],
[11, 12, 13, 17, 20, 24, 26],
[9, 14, 16, 15, 21, 27, 29],
])
week = int(input())
day = int(input())
# Raport wyświetla błędne liczby: popraw poniższe wiersze
row = bookings[week]
print(f"Week {week}: {row}")
print(f"Weekend: {row[5:6]}")
print(f"Day {day}: {bookings[day - 1]}")
print(f"Booked: {bookings[day - 1, week - 1]}")
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Dane i wykresy
4Przekształcanie danych
Zmiana kształtu tablicŁączenie tablicLiczby losowePodsumowanie: symulacja rzutu kostką2Tablice NumPy
Tworzenie tablicKształt i rozmiarZakresy liczbIndeksowanie i wycinaniePodsumowanie: siatka temperatur5Wykresy liniowe i punktowe
Etykiety i tytułyWykresy punktoweWiele linii i legendyKolory i znacznikiRysunki i osiePodsumowanie: tygodniowa liczba kroków8Filtrowanie i sortowanie
Wybieranie wierszyFiltrowanie wierszySortowanie wartościNowe kolumnyPodsumowanie: najlepsze produkty3Operacje matematyczne na tablicach
Operacje matematyczne na całych tablicachStatystyki podsumowująceStatystyki według osiRozgłaszanieMaski logicznePodsumowanie: wyniki egzaminów6Wykresy danych
Wykresy słupkoweHistogramyKilka wykresów na jednymObrazy jako tablicePodsumowanie: raport o opadach9Grupowanie i czyszczenie
Zliczanie wartościGrupowanie danychKilka podsumowańBrakujące wartościPowtórka: wyniki ankietyPoćwicz samodzielnie: Kompilator Python online