Wednesday 9 August 2017

Menghitung a moving average in sas


Saya menyertakan tangkapan layar untuk membantu memperjelas masalah saya: Saya mencoba menghitung jenis moving average dan moving standard deviation. Masalahnya adalah saya ingin menghitung koefisien variasi (stdevavg) untuk nilai sebenarnya. Biasanya hal ini dilakukan dengan menghitung stdev dan avg selama 5 tahun terakhir. Namun kadang-kadang akan ada pengamatan dalam database saya yang saya tidak memiliki informasi dari 5 tahun terakhir (mungkin hanya 3, 2 dll). Thats why i want kode yang akan menghitung avg dan stdev bahkan jika tidak ada informasi untuk keseluruhan 5 tahun. Juga, seperti yang Anda lihat dalam pengamatan, terkadang saya memiliki informasi lebih dari 5 tahun, ketika ini adalah kasus, saya memerlukan semacam moving average yang memungkinkan saya menghitung avg dan stdev selama 5 tahun terakhir. Jadi, jika sebuah perusahaan memiliki informasi selama 7 tahun, saya memerlukan beberapa jenis kode yang akan menghitung avg dan stdev untuk, katakanlah, 1997 (pada 1991-1996), 1998 (pada tahun 1992-1997) dan 1999 (1993-1998). Sebagai im tidak terlalu akrab dengan perintah sas itu harus terlihat (sangat kasar) seperti: Atau sesuatu seperti ini, saya benar-benar tidak tahu, saya akan mencoba dan mengetahuinya tapi layak untuk mempostingnya jika saya tidak menemukannya sendiri. SAS pemula dan saya penasaran apakah tugas berikut bisa dilakukan jauh lebih sederhana seperti saat ini di kepala saya. Saya memiliki data meta (disederhanakan) berikut di tabel bernama userdatemoney: User - Date - Uang dengan berbagai pengguna dan tanggal untuk setiap hari kalender (selama 4 tahun terakhir). Data yang dipesan oleh User ASC dan Date ASC, data sampel terlihat seperti ini: Saya sekarang ingin menghitung rata-rata pergerakan lima hari untuk Uang. Saya memulai dengan apprach yang cukup populer dengan fungsi lag () seperti ini: seperti yang Anda lihat, masalah dengan metode ini terjadi jika ada langkah data yang masuk ke pengguna baru. Aron akan mendapatkan beberapa nilai tertinggal dari Anna yang tentu saja tidak boleh terjadi. Sekarang pertanyaan saya: Saya cukup yakin Anda dapat menangani pengguna beralih dengan menambahkan beberapa bidang tambahan seperti laggeduser dan dengan mengatur ulang variabel N, Sum dan Mean jika Anda melihat tombol seperti itu tapi: Bisakah ini dilakukan dengan cara yang lebih mudah. ​​Mungkin menggunakan OLEH klausul dengan cara apapun Terima kasih atas ide dan pertolongan Anda. Cara termudah adalah menggunakan PROC EXPAND: Dan seperti yang disebutkan dalam komentar Johns, penting untuk diingat tentang nilai yang hilang (dan tentang pengamatan awal dan akhir juga). Saya telah menambahkan opsi SETMISS ke kode ini, karena Anda menjelaskan bahwa Anda ingin memberi nilai lebih rendah, tidak mengabaikannya (perilaku MOVAVE default). Dan jika Anda ingin mengecualikan pertama 4 pengamatan untuk setiap pengguna (karena mereka tidak memiliki cukup pra sejarah untuk menghitung rata-rata bergerak 5), Anda dapat menggunakan opsi TRIMLEFT 4 di dalam TRANSFORMOUT (). Dijawab 3 Des 13 di 15: 29Moving Average Contoh ini mengajarkan cara menghitung moving average dari deret waktu di Excel. Rata-rata bergerak digunakan untuk memperlancar penyimpangan (puncak dan lembah) agar mudah mengenali tren. 1. Pertama, mari kita lihat rangkaian waktu kita. 2. Pada tab Data, klik Analisis Data. Catatan: cant menemukan tombol Analisis Data Klik disini untuk memuat add-in Analisis ToolPak. 3. Pilih Moving Average dan klik OK. 4. Klik pada kotak Input Range dan pilih range B2: M2. 5. Klik di kotak Interval dan ketik 6. 6. Klik pada kotak Output Range dan pilih sel B3. 8. Plot grafik nilai-nilai ini. Penjelasan: karena kita mengatur interval ke 6, rata-rata bergerak adalah rata-rata dari 5 titik data sebelumnya dan titik data saat ini. Akibatnya, puncak dan lembah dihaluskan. Grafik menunjukkan tren yang semakin meningkat. Excel tidak bisa menghitung moving average untuk 5 poin data pertama karena tidak ada cukup data point sebelumnya. 9. Ulangi langkah 2 sampai 8 untuk interval 2 dan interval 4. Kesimpulan: Semakin besar interval, semakin puncak dan lembah dihaluskan. Semakin kecil interval, semakin dekat rata-rata bergerak ke titik data aktual.

No comments:

Post a Comment