Indicizzazione e slicing
Fa parte della sezione Dati e grafici del percorso Machine Learning di Coddy. Lezione 8 di 60.
Gli array hanno indici come le liste, a partire da 0. Cinque giorni di esercitazioni al pianoforte, in minuti:
practice = np.array([20, 0, 35, 15, 40])
print(practice[0]) # primo
print(practice[-1]) # ultimo
print(practice[1:4]) # posizioni da 1 a 3Questo stampa:
20
40
[ 0 35 15]Un array 2D usa una riga e una colonna in una coppia di parentesi, prima la riga. Ogni riga di stock è un negozio, ogni colonna un prodotto:
stock = np.array([[5, 8, 2, 6], [9, 1, 4, 3], [7, 0, 6, 8]])
print(stock[1, 2]) # un valore
print(stock[0]) # un'intera riga
print(stock[:, 3]) # un'intera colonnaQuesto stampa:
4
[5 8 2 6]
[6 3 8]Nel punto della riga, i due punti indicano ogni riga e un intervallo come 0:2 alcune di esse. Quindi data[:, column] è una caratteristica per ogni campione.
Sfida
FacileIl report di un hotel è sbagliato. bookings ha una riga per settimana e una colonna per giorno, da lunedì a domenica. Il programma legge una settimana e un giorno, numerati a partire da 1.
Ogni riga contiene un bug. Correggili in modo che corrispondano alle etichette:
Week: l'intera settimanaWeekend: gli ultimi due giorni, una fettaDay: quel giorno, ogni settimanaBooked: quel singolo giorno
Per la settimana 3, giorno 5:
Week 3: [11 12 13 17 20 24 26]
Weekend: [24 26]
Day 5: [18 19 20 21]
Booked: 20Provalo tu
import numpy as np
# Habitaciones reservadas en un hotel pequeño: una fila por semana (semanas 1 a 4),
# una columna por día (días 1 a 7, de lunes a domingo)
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())
# El informe muestra números incorrectos: corrige las líneas siguientes
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]}")
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Dati e grafici
4Modellare i dati
Rimodellare gli arrayUnire gli arrayNumeri casualiRipasso: simulazione del lancio dei dadi2Array NumPy
Creazione di arrayForma e dimensioneIntervalli di numeriIndicizzazione e slicingRiepilogo: griglia delle temperature5Grafici a linee e a dispersione
Etichette e titoliGrafici a dispersionePiù linee e legendeColori e marcatoriFigure e assiRiepilogo: passi settimanali8Filtraggio e ordinamento
Selezionare le righeFiltrare le righeOrdinare i valoriNuove colonneRiepilogo: i prodotti migliori3Matematica con gli array
Operazioni matematiche su interi arrayStatistiche riassuntiveStatistiche per asseBroadcastingMaschere booleaneRiepilogo: voti d'esame6Grafici per i dati
Grafici a barreIstogrammiPiù grafici in unoImmagini come arrayRiepilogo: rapporto sulle precipitazioniEsercitati da solo: Compilatore Python online