Bagaimana cara melakukan rolling average pada deretan tanggal dan nilai?

0

Bagaimana cara saya melakukan rolling average pada deretan tanggal dan nilai?

Data pada dasarnya terlihat seperti berikut:

9/15/2010   199.8
9/14/2010   202
9/13/2010   200.8
9/12/2010   202.8
9/11/2010   201.4
9/10/2010   201.6
9/9/2010    201.8
9/8/2010    202.2
9/7/2010    202.2
9/6/2010    202.6
9/5/2010    205.8
9/4/2010    204.2
9/3/2010    205
9/2/2010    206.6
9/1/2010    208
8/31/2010   209.8
8/30/2010   210.2
8/29/2010   209.6
8/28/2010   209.6
8/27/2010   209.4
8/26/2010   209.8
8/25/2010   209.2
8/24/2010   210.8
cgp
sumber
1
apakah Anda mencari rata-rata di samping setiap baris, atau rata-rata di tempat lain yang secara otomatis menyesuaikan saat Anda menambah / menghapus / mengubah data?
JNK

Jawaban:

4

Dengan asumsi potongan data pertama Anda di B1, Anda dapat menyalin dan menempelkan rumus berikut ini di sepanjang kolom data Anda. Masukkan ini ke dalam C2:

=AVERAGE($B$1:B2)

Dolar menandatangani "jangkar" sel pertama, menjadikannya referensi absolut yang tidak bergerak saat Anda menyalin / menempelkan rumus, sementara sel kedua adalah referensi relatif yang akan terus memperbarui rata-rata dengan setiap entri.

Michael
sumber
Hrm, sejujurnya aku berharap untuk sesuatu yang lebih sederhana daripada copy paste formula di telepon. (
Bukannya
@alt Anda tidak mendapatkan yang lebih sederhana dari satu rumus Anda cukup salin seluruh kolom, ini adalah cara saya akan melakukannya. +1 @Michael.
DMA57361
Anda seharusnya tidak menyalin dan menempel itu. Masukkan yang pertama, pilih seluruh kolom, lalu Edit & rarr; Isi & rarr; Bawah.
Stephen Jennings
Menggunakan fungsi isi adalah apa yang saya sebut "copy paste". Setiap sel dievaluasi secara individual dan berpotensi berbeda. (meskipun tidak akan) ...
cgp
2

Dengan "Rolling Average", saya yakin Anda berbicara tentang rata-rata dari n hari terakhir (katakanlah 5 hari).

(Berdasarkan data yang Anda berikan, dengan asumsi itu adalah kolom A & B)

Masukkan =AVERAGE(OFFSET(B1,0,0,5))ke dalam C1, lalu salin dan tempel ke bawah (jika perlu).

C1harus menghasilkan 201.36yang merupakan rata-rata 5 hari terakhir; C2adalah 201.72, dan seterusnya.


Penjelasan:

OFFSET()menampilkan kisaran mulai dari B1dengan tinggi 5(ke bawah, termasuk B1dirinya sendiri).
(Ganti 5dengan jumlah hari yang Anda inginkan.)

Kemudian, AVERAGE()digunakan untuk menghitung rata-rata kisaran.

Wilson
sumber
1
=AVERAGE($B$1:INDEX($B$1:$B$100,COUNTA($B$1:$B$100)))

Ini akan diperbarui saat Anda menambahkan data. Tetapi perhatikan bahwa ini hanya terlihat pada 100 baris pertama, jadi sesuaikan jika akan ada lebih banyak. Juga, jika Anda memasukkan garis di atas, referensi akan bergeser ke bawah.

dkusleika
sumber
0

Setelah meninjau jawaban saya sendiri bertahun-tahun kemudian, saya ingin menyarankan formula yang lebih sederhana.

  1. Input ke C1 =average(B1:B5)(asumsikan rolling rata-rata 5 hari)
  2. Salin dan tempel ke bawah di kolom C

Catatan: Untuk catatan paling awal (24/8/2010), rata-rata bergulir (kolom C) akan menunjukkan nilai hari itu. Untuk catatan kedua (25/8/2010), itu akan menunjukkan rata-rata 2 hari pertama, dan seterusnya.

Wilson
sumber