Che cos'è esattamente l'algoritmo di riempimento automatico di Excel?


50

Qual è l'algoritmo utilizzato da Auto Fill in Excel?

Ad esempio, quando inserisco i numeri 3,4,5,7,8 in una colonna e utilizzo Riempimento automatico, ottengo il seguente risultato:

 3
 4
 5
 7
 8
 9.3
10.6
11.9
13.2
14.5
15.8
17.1
18.4

2
Excel probabilmente controlla l'aumento medio e lo usa per il riempimento automatico. (Nella tua serie hai aumentato di 1 tre volte e una volta di 2, la media è 1,25, arrotondandola a una cifra (poiché non sono affiliato con MS non ho idea del perché), è 1.3, quindi aumenta il numero 1.3 in ciascuno riga.).
Máté Juhász,

3
@ MátéJuhász È una buona ipotesi, e quello che inizialmente pensavo. Tuttavia risulta essere errato. Vedi la mia risposta per maggiori dettagli.
robinCTS,

Un'osservazione è che la differenza tra gli ultimi due valori indicati è 1,3 e quindi i valori riempiti automaticamente aumentano di 1,3. L'interpretazione più semplice (ma, ora ho imparato, sbagliato) per questo insieme di dati sarebbe che ripete solo l'ultima differenza.
Thomas Padron-McCarthy,

@ ThomasPadron-McCarthy In realtà, gli ultimi due valori indicati sono 7 e 8, quindi la differenza è 1. L'1,3 è la pendenza dell'andamento lineare calcolata, che, come è stato correttamente accertato, viene quindi progressivamente aggiunta per ottenere i valori di riempimento automatico.
robinCTS,

Risposte:


66

Excel utilizza il suo approccio Trend lineare quando si esegue il riempimento automatico. Questo utilizza l' algoritmo del metodo dei minimi quadrati .

Questo è lo stesso algoritmo utilizzato dalla TREND()funzione come mostrato di seguito:

Schermata del foglio di lavoro

Inserisci la seguente formula in C6e ctrl-invio / copia-incolla / riempi giù nel resto della colonna:

=TREND($C$1:$C$5,$B$1:$B$5,B6)

Di seguito è riportato un grafico che mostra la linea di tendenza su cui cadono i nuovi valori.

Il metodo dei minimi quadrati crea una linea di "adattamento ottimale" per i punti di dati originali. I nuovi punti dati vengono essenzialmente estratti da questa linea.

Screenshot del grafico


12
Non che dubito della tua risposta, ma sono solo curioso di sapere come usano il metodo dei minimi quadrati. (O, più in generale, hai fatto qualche indagine "sotto il cofano"? O è comune che tali applicazioni utilizzino questo metodo?)
BruceWayne,

7
@BruceWayne sì, è un approccio comune nella semplice regressione lineare
0xFEE1DEAD

10
@BruceWayne Non è stata richiesta alcuna indagine sotto il cofano ;-) È menzionato in alcuni punti del web. Inoltre, la stessa documentazione di Excel afferma che la TREND()funzione utilizza "il metodo dei minimi quadrati", che, come puoi vedere, ho confermato produce lo stesso risultato del riempimento automatico. Quindi, purché tu possa credere alla documentazione di Micro $ oft (e ora tutti quanto sia accurato) direi che ciò lo rende abbastanza conclusivo. Inoltre cosa ha detto 0xFEE1DEAD.
robinCTS,


1
Video obbligatorio di Joel Spolsky su Excel. Passa a ~ 8 minuti di una spiegazione di come Excel fa riferimento alle celle, utile per definire le tue serie. youtube.com/watch?v=0nbkaYsR94c
Bindelstif
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.