MENEMUKAN PUSAT ANDA
4.2 RATA-RATA DALAM R: MEAN()
R menyediakan cara yang sangat mudah untuk menghitung mean dari sekumpulan angka:
mean(). Saya menerapkannya pada contoh tinggi enam anak.
Pertama, saya membuat vektor ketinggian:
Kemudian saya menerapkan fungsi:
Dan di sana Anda memilikinya.
Apa kondisi Anda?
Saat Anda bekerja dengan bingkai data, terkadang Anda ingin menghitung rata-rata hanya kasus (baris) yang memenuhi kondisi tertentu, daripada rata-rata semua kasus. Ini mudah dilakukan di R. Untuk pembahasan selanjutnya, saya menggunakan kerangka data Cars93 yang sama dengan yang saya gunakan di Bab 3. Ini adalah salah satu yang memiliki data untuk sampel 93 mobil dari tahun 1993. Ada dalam paket MASS. Jadi pastikan Anda memiliki paket MASS di perpustakaan Anda. (Temukan MASS pada tab Packages dan klik kotak centangnya.)
Misalkan saya tertarik dengan tenaga kuda rata-rata mobil yang dibuat di AS. Pertama saya memilih mobil-mobil itu dan memasukkan tenaga kudanya ke dalam vektor:
(Jika bagian kanan dari baris itu tampak aneh bagi Anda, baca kembali Bab 2.) Tenaga kuda rata-rata adalah
Hmm, saya ingin tahu berapa rata-rata untuk mobil yang tidak dibuat di AS:
Jadi rata-ratanya sedikit berbeda. (Bisakah kita memeriksa perbedaan itu lebih dekat? Ya kita bisa, itulah yang saya lakukan di Bab 11.)
Hilangkan $-signs sebagainya dengan()
Dalam kode-R sebelumnya, tanda $ menunjukkan variabel dalam kerangka data Cars93.
R menyediakan jalan keluar untuk menggunakan nama kerangka data (dan karenanya, tanda $) setiap kali Anda merujuk ke salah satu variabelnya.
Dalam Bab 3, saya menunjukkan bahwa fungsi grafik mengambil, sebagai argumen pertama mereka, sumber data. Kemudian, dalam daftar argumen, tidak perlu mengulang sumber bersama dengan tanda $ untuk menunjukkan variabel yang akan diplot. Fungsi with() melakukan ini untuk fungsi R lainnya. Argumen pertama adalah sumber data, dan argumen kedua adalah fungsi untuk diterapkan ke variabel dalam sumber data tersebut.
Untuk mencari tenaga kuda rata-rata mobil USA di Cars93:
Ini juga melewatkan langkah membuat vektor Horsepower.USA.
Bagaimana dengan berbagai kondisi, seperti tenaga kuda rata-rata mobil 4 silinder AS?
R juga menyediakan fungsi attach() sebagai cara untuk menghilangkan tanda $ dan penekanan tombol. Lampirkan bingkai data (attach(Cars93), misalnya) dan Anda tidak perlu merujuknya lagi saat menggunakan variabelnya. Namun, banyak otoritas R merekomendasikan hal ini, karena dapat menyebabkan kesalahan.
Mengeksplorasi data
Sekarang kita telah memeriksa sarana tenaga kuda mobil AS dan non-AS, bagaimana dengan distribusi keseluruhan? Itu membutuhkan sedikit eksplorasi data. Saya menggunakan paket ggplot2 (lihat Bab 3) untuk membuat histogram berdampingan dari kerangka data Cars93 sehingga saya dapat membandingkannya. (Pastikan Anda memiliki ggplot2 di perpustakaan.) Gambar 4.1 menunjukkan apa yang saya maksud.
Gambar 4.1 Histogram tenaga kuda untuk mobil AS dan Non-AS di Cars93.
Untuk membuat histogram pada gambar, saya memulai dengan cara biasa:
dan kemudian tambahkan fungsi geom
Saya bermain-main sedikit untuk sampai pada nilai binwidth itu.
Kode sejauh ini membuat histogram biasa dengan Horsepower pada sumbu x. Bagaimana cara membuat Gambar 4.1? Untuk melakukan itu, saya menambahkan kemampuan ggplot yang disebut faceting. Sederhananya, faceting membagi data menurut variabel nominal — seperti Origin, yang berupa “USA” atau “non-USA.” Beberapa fungsi faceting tersedia. Yang saya gunakan di sini disebut facet_wrap(). Untuk membagi data menurut Asal, itu
Sekadar pengingat: Operator tilde (~) berarti “tergantung pada,” jadi anggaplah Asal sebagai variabel independen. Kode lengkap untuk Gambar 4.1 adalah:
Seperti yang Anda lihat, distribusi memiliki bentuk keseluruhan yang berbeda. Mobil-mobil AS tampaknya memiliki jarak antara 200-an rendah dan nilai-nilai tertinggi berikutnya, dan mobil-mobil non-AS tidak begitu banyak. Anda juga melihat nilai maksimum yang lebih tinggi untuk
mobil AS. Apa perbedaan lain yang Anda lihat? (Saya membahas perbedaan-perbedaan itu di Bab 7.)
Pencilan: Cacat rata-rata
Pencilan adalah nilai ekstrem dalam kumpulan data. Jika kumpulan data adalah sampel dan Anda mencoba memperkirakan rata-rata populasi, outlier mungkin membiaskan estimasi.
Ahli statistik berurusan dengan outlier dengan memangkas mean — menghilangkan nilai ekstrim pada low end dan high end sebelum menghitung mean sampel. Jumlah trim adalah persentase, seperti 5 persen skor atas dan bawah. Misalnya, histogram di sebelah kiri Gambar 4-1 menunjukkan beberapa nilai ekstrim. Untuk memangkas 5 persen atas dan bawah, saya menambahkan argumen trim ke mean():
Hasilnya sedikit lebih rendah dari rata-rata yang belum dipangkas.
Berapa persentase yang tepat untuk trim? Itu terserah Anda. Itu tergantung pada apa yang Anda ukur, seberapa ekstrem skor Anda, dan seberapa baik Anda mengetahui bidang yang Anda pelajari. Saat Anda melaporkan rata-rata yang dipangkas, beri tahu audiens Anda bahwa Anda telah melakukan ini dan beri tahu mereka persentase yang telah Anda pangkas. Di bagian mendatang tentang median, saya menunjukkan cara lain untuk menangani skor ekstrem.
Cara lain untuk mencapai tujuan
Di bagian ini, saya memberi tahu Anda tentang dua rata-rata tambahan yang berbeda dari rata-rata yang biasa Anda gunakan. Rata-rata variasi taman sehari-hari disebut rata-rata aritmatika (diucapkan “arith-MET-ic”). Berapa banyak cara yang berbeda yang mungkin?
Matematikawan Yunani kuno menemukan 11.
Rata-rata geometris
Misalkan Anda memiliki investasi 5 tahun yang menghasilkan persentase ini: 10 persen, 15 persen, 10 persen, 20 persen, dan 5 persen. (Ya, ya. Saya tahu. Ini fiksi.) Berapa tingkat pengembalian tahunan rata-rata? Tebakan pertama Anda mungkin rata-rata persentase tersebut. Rata-rata itu adalah 12 persen. Dan itu tidak benar. Mengapa? Itu melewatkan poin penting. Pada akhir tahun pertama, Anda mengalikan investasi Anda dengan 0,10 — Anda tidak menambahkan 1,10 ke dalamnya. Pada akhir tahun kedua, Anda mengalikan hasil tahun pertama dengan 1,15, dan seterusnya.
Rata-rata aritmatika tidak akan memberi Anda tingkat pengembalian rata-rata. Sebagai gantinya, Anda menghitung rata-rata itu dengan cara ini:
Tingkat Pengembalian Rata-rata √1.10 × 1.15 × 1.10 × 1.20 × 1.05 = 1.118847 Tingkat pengembalian rata-rata sedikit kurang dari 12 persen. Rata-rata semacam ini disebut rata-rata geometrik. Dalam contoh ini, mean geometrik adalah akar kelima dari produk lima angka. Apakah selalu akar ke-n dari produk dari n angka? Ya. Basis R tidak menyediakan fungsi untuk menghitung mean geometrik, tetapi cukup mudah untuk menghitungnya.
Saya mulai dengan membuat vektor angka:
Saya menggunakan fungsi prod() untuk menghitung produk dari angka-angka dalam vektor, dan fungsi length() untuk menghitung berapa banyak angka dalam vektor. Perhitungannya kemudian
Arti harmonik
Inilah situasi yang terkadang Anda temui dalam kehidupan nyata, tetapi lebih sering terjadi di buku teks aljabar. Misalkan Anda tidak terburu-buru untuk berangkat kerja di pagi hari dan Anda berkendara dari rumah ke tempat kerja Anda dengan kecepatan 30 mil per jam. Di penghujung hari, di sisi lain, Anda ingin cepat pulang. Jadi, dalam perjalanan pulang (dengan jarak yang persis sama), Anda berkendara dari tempat kerja ke rumah dengan kecepatan 50 mil per jam. Berapa tarif rata-rata untuk total waktu Anda di jalan?
Ini bukan 40 mil per jam, karena Anda berada di jalan dengan jumlah waktu yang berbeda untuk setiap bagian perjalanan. Tanpa membahas ini terlalu dalam, rumus untuk mengetahuinya adalah:
Rata-rata adalah 37,5. Jenis rata-rata ini disebut rata-rata harmonik. Contoh ini terdiri dari dua angka, tetapi Anda dapat menghitungnya untuk jumlah angka berapa pun. Masukkan saja setiap angka ke dalam penyebut pecahan dengan 1 sebagai pembilangnya. Matematikawan menyebutnya kebalikan dari suatu bilangan. (Jadi 1 30 adalah kebalikan dari 30.) Tambahkan semua kebalikannya dan ambil rata-ratanya. Hasilnya adalah kebalikan dari rata-rata harmonik.
Basis R tidak memiliki fungsi untuk rata-rata harmonik, tetapi (sekali lagi) mudah untuk menghitungnya. Anda mulai dengan membuat vektor dari dua kecepatan:
Mengambil kebalikan dari vektor menghasilkan vektor timbal balik:
Jadi rata-rata harmoniknya adalah