Czym dokładnie jest algorytm automatycznego wypełniania programu Excel?


50

Jakiego algorytmu używa funkcja automatycznego wypełniania w programie Excel?

Na przykład, gdy wprowadzę liczby 3,4,5,7,8 do kolumny, a następnie użyję funkcji automatycznego wypełniania, otrzymuję następujący wynik:

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

2
Excel prawdopodobnie sprawdza średni wzrost i używa go do automatycznego wypełniania. (W swojej serii trzykrotnie zwiększyłeś o 1, a raz o 2, średnia wynosi 1,25, zaokrąglij do jednej cyfry (ponieważ nie jestem związany ze stwardnieniem rozsianym, nie mam pojęcia, dlaczego), to 1,3, więc zwiększ liczbę 1,3 w każdym rząd.).
Máté Juhász

3
@ MátéJuhász To dobre przypuszczenie i to, co początkowo myślałem. Jednak okazuje się to niepoprawne. Zobacz moją odpowiedź, aby uzyskać więcej informacji.
robinCTS

Zaobserwowano, że różnica między dwiema ostatnimi podanymi wartościami wynosi 1,3, a następnie wszystkie wartości autouzupełniania zwiększają się o 1,3. Najprostszą (ale, jak się już nauczyłem, złą) interpretacją tego zestawu danych byłoby to, że po prostu powtarza ostatnią różnicę.
Thomas Padron-McCarthy

@ ThomasPadron-McCarthy W rzeczywistości dwie ostatnie podane wartości to 7 i 8, więc różnica wynosi 1. 1.3 to obliczone nachylenie trendu liniowego, które, jak prawidłowo ustalono, jest następnie stopniowo dodawane w celu uzyskania automatycznie wypełnionych wartości.
robinCTS

Odpowiedzi:


66

Podczas automatycznego wypełniania program Excel stosuje metodę trendu liniowego. Wykorzystuje algorytm metody najmniejszych kwadratów .

Jest to ten sam algorytm wykorzystywany przez TREND()funkcję, jak pokazano poniżej:

Zrzut ekranu z arkusza roboczego

Wpisz następującą formułę C6i ctrl-enter / copy-paste / fill-down do reszty kolumny:

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

Poniżej znajduje się wykres pokazujący linię trendu, na którą spadają nowe wartości.

Metoda najmniejszych kwadratów tworzy linię „najlepszego dopasowania” dla oryginalnych punktów danych. Nowe punkty danych są zasadniczo pobierane z tej linii.

Zrzut ekranu mapy


12
Nie dlatego, że wątpię w twoją odpowiedź, ale po prostu ciekawi mnie, skąd wiesz, że używają metody najmniejszych kwadratów. (Lub, mówiąc szerzej, czy przeprowadzałeś jakieś dochodzenie „pod maską”? Czy też takie aplikacje używają tej metody?)
BruceWayne

7
@BruceWayne tak, jest to powszechne podejście w prostej regresji liniowej
0xFEE1DEAD

10
@BruceWayne Żadne dochodzenie pod maską nie było wymagane ;-) Jest wspomniane w kilku miejscach w sieci. Dodatkowo, własna dokumentacja Excela stwierdza, że TREND()funkcja używa „metody najmniejszych kwadratów”, co, jak widać, potwierdziło, że daje taki sam wynik jak automatyczne wypełnianie. Tak więc, pod warunkiem, że możesz wierzyć własnej dokumentacji Micro $ oft (a my wszyscy teraz, jak dokładne to jest), powiedziałbym, że to czyni ją dość rozstrzygającą. Plus to, co powiedział 0xFEE1DEAD.
robinCTS


1
Obowiązkowe wideo Joela Spolsky'ego o programie Excel. Przejdź do ~ 8 minut objaśnienia, w jaki sposób Excel odwołuje się do komórek, co jest przydatne do definiowania własnej serii. youtube.com/watch?v=0nbkaYsR94c
Bindelstif
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.