Bab 3 Parameter dan fungsi 3.1 Parameter versus variabel variabel adalah nilai dunia nyata dengan kuantitas yang dapat diukur sedangkan parameter adalah entitas yang mungkin atau mungkin tidak dapat kita ukur 3.2 Parameter fungsi pemodelan Berikan parameterisasi eksponensial, sinus, hukum pangkat …
Idenya adalah untuk membuat argumen ke fungsi matematika berdimensi.
Parameter dan logaritma – Anda dapat mengambil log apa pun yang Anda suka. Satuan muncul sebagai konstanta 3.4 Parameter danmakeFun() Jelaskan cara makeFun()kerjanya sudah dibahas sebelumnya. 3.5 Fungsi tanpa parameter: splines dan smooths hiper-parameter. Ini adalah angka yang mengatur bentuk fungsi, tetapi dapat diatur secara sewenang-wenang dan masih cocok dengan data. Parameter hiper tidak disetel langsung oleh data Smoothers” dan “splines” adalah dua jenis fungsi tujuan umum yang dapat menangkap pola dalam data, tetapi tidak ada bentuk aljabar sederhana. Membuat fungsi seperti itu sangat mudah, selama Anda dapat membebaskan diri dari gagasan bahwa fungsi harus selalu memiliki rumus.
Smoother dan splines tidak ditentukan oleh bentuk dan parameter aljabar, tetapi oleh data dan algoritma. Sebagai ilustrasi, pertimbangkan beberapa data sederhana. Kumpulan data Loblollyberisi 84 pengukuran usia dan tinggi pinus loblolly.
library(mosaicCalc)
## Loading required package: mosaicCore
## Loading required package: Deriv
## Loading required package: Ryacas
##
## Attaching package: 'Ryacas'
## The following object is masked from 'package:stats':
##
## integrate
## The following objects are masked from 'package:base':
##
## %*%, diag, diag<-, lower.tri, upper.tri
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
gf_point(height ~ age, data=datasets::Loblolly)
Cherry <- datasets::trees
gf_point(Volume ~ Girth, data = Cherry)
Cukup mudah untuk membuat spline atau konektor linier:
library(mosaic)
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
g1 = spliner(Volume ~ Girth, data = Cherry)
## Warning in regularize.values(x, y, ties, missing(ties)): collapsing to unique
## 'x' values
g2 = connector(Volume ~ Girth, data = Cherry)
## Warning in regularize.values(x, y, ties, missing(ties), na.rm = na.rm):
## collapsing to unique 'x' values
slice_plot(g1(x) ~ x, domain(x = 8:18)) %>%
slice_plot(g2(x) ~ x, color ="red") %>%
gf_point(Volume ~ Girth, data = Cherry) %>%
gf_labs(x = "Girth (inches)")
kedua fungsi sama sama mengikuti data. Masing masing fungsi melewati
setiap titik. pengecualian adalah dua titik dengan keliling 13 inci.
Tidak ada fungsi yang dapat melewati kedua titik dengan keliling 13,
jadi fungsi membagi selisih dan melewati rata-rata dari dua titik
Gerakan naik turun adalah fungsi yang sulit dipercaya. Untuk situasi seperti itu, di mana Anda memiliki alasan untuk percaya bahwa fungsi mulus lebih tepat daripada fungsi dengan banyak pasang surut, jenis fungsi yang berbeda sesuai: lebih halus.
g3 <- smoother(Volume ~ Girth, data = Cherry, span=1.5)
gf_point(Volume~Girth, data=Cherry) %>%
slice_plot(g3(Girth) ~ Girth) %>%
gf_labs(x = "Girth (inches)")
Smoother diberi nama yang baik: mereka membangun fungsi smooth yang mendekati data. Anda memiliki kendali atas seberapa mulus fungsi tersebut. Parameter hiper spanmengatur ini:
g4 <- smoother(Volume ~ Girth, data=Cherry, span=1.0)
gf_point(Volume~Girth, data = Cherry) %>%
slice_plot(g4(Girth) ~ Girth) %>%
gf_labs(x = "Girth (inches)", y = "Wood volume")
untuk menangkap lebih dari satu variable sebagai input. Smoother
melakukan ini dengan sangat baik; cukup tentukan variabel mana yang akan
menjadi input.
g5 <- smoother(Volume ~ Girth+Height,
data = Cherry, span = 1.0)
gf_point(Height ~ Girth, data = Cherry) %>%
contour_plot(g5(Girth, Height) ~ Girth + Height) %>%
gf_labs(x = "Girth (inches)",
y = "Height (ft)",
title = "Volume (ft^3)")
Saat Anda ingin memplot suatu fungsi, tentu saja Anda perlu memilih
rentang untuk nilai input. Seringkali masuk akal untuk memilih rentang
yang sesuai dengan data yang menjadi dasar fungsi. Anda dapat menemukan
ini dengan range()perintah, misalnya