Using R For Introductory Calculus And Statistics

1y ago
15 Views
3 Downloads
446.69 KB
41 Pages
Last View : 1m ago
Last Download : 1m ago
Upload by : Bennett Almond
Transcription

Using R for Introductory Calculus and StatisticsDaniel KaplanMacalester CollegeAugust 9, 2007Slide 1/35Daniel KaplanUsing R for Introductory Calculus and Statistics

BackgroundIII have been using R for 11 years for introductory statistics.5 years ago we started to revise our year-one introductorycurriculum: Calculus and Statistics.IICalculus and Statistics topics were entirely unrelated beforethis.Major theme of the revision was applied multivariate modeling.This ties together the calculus and statistics closely.IWe wanted a computing platform that could support bothCalculus and Statistics.IThere is still resistence from faculty who do not appreciate thevalue of an integrated approach and who want to use apackage that they are familiar with: Mathematica, Excel,SPSS, STATASlide 2/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Applied Calculus: GoalsIIntended for students who do not plan to take a multi-coursecalculus sequence.IGive them the math they need to work in their field ofinterest, rather than the foundation for future math coursesthey will never take.Slide 3/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Applied Calculus: TopicsIChange: ordinary, partial, and directional derivatives.IOptimization: including fitting and contrained optim.Modeling:IIIIIIfunction building blocks: linear, polynomial, exp, sin,power-lawfunctions of multiple variablesdifference & differential equations & the phase planeunits and dimensions.Example: polynomials to 2nd order in two variables, e.g.,bicycle speed as function of hill steepness and gear. There isan interaction between steepness and gear.Slide 4/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Introduction to Statistical Modeling: GoalsGive students the conceptual understanding and specific skills theyneed to address real statistical issues in their fields of interest.IRecognize explicitly that “client” fields routinely work withmultiple variables.IISM provides the foundations for doing so.ITries to provide a unified framework that applies to manydifferent fields using different methods and terminology.Paradox of the conventional course:IIIIt assumes that we need to teach students about t-tests, BUT. absurdly, that they can figure out the multivariate stuff ontheir own.Slide 5/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Introduction to Statistical Modeling: TopicsILinear models: interpretation of terms (incl. interactionterms), meaning of coefficients, fittingIIssues of collinearity: Simpson’s paradox, degrees of freedom,etc.Basic inferential techniques:IIIIIBootstrapping and simulation to develop concepts“Black box” normal theory resultsAnovaTheory is presented in a geometrical framework.Slide 6/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Who takes these courses?IMore than 100 students each year (out of a class size of 450).ICalculus and statistics required for the biology major.IEconomics majors take it before econometrics.IMath majors are required to take statistics (very unusual!).They take it after linear algebra.IAbout 2/3 of calculus students have had some calculus inhigh school.IAbout 1/3 of statistics students have had an AP-typestatistics course in high school.Slide 7/35Daniel KaplanUsing R for Introductory Calculus and Statistics

What Makes R Effective?IFree, multi-platformIPowerful & integrated with graphics.ICommand-line based & modeling languageIExtensible, programmableIFunctional style, incl. lazy evaluation. This allows sensiblecommand-line interfaces.Slide 8/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Example from Calculus: FunctionsWhat students need to know about functions:I Functions take one or more arguments and return a value.I Definition of a function describes the rule.I Application of a function to arguments produces the value.R supports definition with little syntactical overheadf function(x){ x 2 2*x }and application is very easy f(3)[1] 15R emphasizes that the function itself is a thing, distinct from itsapplication: ffunction(x){ x 2 2*x }Slide 9/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Functions: What’s missingSimple support for multivariate functions with vector arguments,e.g.It would be nice to be able to say,f function([x,y,z]){ x 2 2*x*y sqrt(z)*x }Currently, I have to sayf function(v){ v[1] 2 2*v[1]*v[2] sqrt(v[3])*v[1] }This isn’t terrible, but it’s hard to read and introduces more syntaxand concepts (e.g., indexing)Slide 10/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Vectors: What’s Missing?ISimple, concise operations for assembling matrices. It’s uglyto say: M cbind( rbind(1,2,3), rbind(6,5,4) )[,1] [,2][1,]16[2,]25[3,]34IMatlab-like consistency. If you extract a column from amatrix, it should be a column. NOT M[,1][1] 1 2 3Slide 11/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Example from Calculus: DifferentiationWhat students need to know about the derivative operator.ITakes a function as input, produces a function as output.IThe output function gives the slope of the input function atany point.NOT PRIMARILY:IIIAlgebraic algorithms for transforms: e.g., x n nx n 1The theory of the infinitesimal.A simple differentiation operator:D function(f,delta .000001){function(x){ (f(x delta) - f(x-delta))/(2*delta)} }Slide 12/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Using D600 20f (x)100 f function(x){ x 2 2*x } plot(f, 0, 10) 10 50510xSlide 13/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Using D100D(f) (x) 10600 20f (x)10020 f function(x){ x 2 2*x } plot(f, 0, 10) plot(D(f), 0, 10) 10 50510xSlide 13/35 10 50510xDaniel KaplanUsing R for Introductory Calculus and Statistics

Using D100D(f) (x) 10600 20f (x)10020 f function(x){ x 2 2*x } plot(f, 0, 10) plot(D(f), 0, 10) 10 50510 10x 50510x1.9981.994D(D(f)) (x)2.002Numerical pathology of (D(D(f))) plot(D(D(f)), 0, 10)Slide 13/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Why not the built-in D?IIIt doesn’t reinforce the notion of an operator on functions.It’s too complicated. g deriv( sin( 3*x), ’x’) gexpression({.expr1 - 3 * x; .value - sin(.expr1).grad - array(0, c(length(.value), 1), list(NULL,.grad[, "x"] - cos(.expr1) * 3; attr(.value, "grad.value}) x 7 eval(g)[1] 0.8366556attr(,"gradient")x[1,] -1.643188Slide 14/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Why not the built-in D?It doesn’t reinforce the notion of an operator on functions.It’s too complicated. g deriv( sin( 3*x), ’x’) gexpression({.expr1 - 3 * x; .value - sin(.expr1).grad - array(0, c(length(.value), 1), list(NULL,.grad[, "x"] - cos(.expr1) * 3; attr(.value, "grad.value}) x 7 eval(g)[1] 0.8366556attr(,"gradient")x[1,] -1.643188I need to understand better the relationship between functions andformulas, and operations on formulas for extracting structure.IISlide 14/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Example: Fitting Linear ModelsR makes this amazingly easy. g read.csv(’galton-heights.csv’)family father mother sex height 2.54and so on lm( height sex father, data g)(Intercept)sexMfather34.46115.17600.4278 lm( height sex father mother, data 3215Slide 15/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Operating on the results of linear modelingSum of squares relationship: sum( g height 2)[1] 4013892 m1 lm( height sex father, data g) sum( m1 fitted 2) sum( m1 resid 2)[1] 4013892 m2 lm( height sex father mother, data g) sum( m2 fitted 2) sum( m2 resid 2)[1] 4013892Orthogonality of fitted and residual sum( m2 fitted * m2 resid )[1] 4.239498e-12-- essentially 0Slide 16/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Modeling: What’s missingSyntax is not forgiving of small mistakes:IMis-spelled column name: sum( g heights )[1] 0 sum( g height )[1] 59951.1INamed argument confounding. You flip 50 fair coins. Where’sthe 10th percentile on the number of heads? qbinom( .10, size 50, prob .5)[1] 20 qbinom( .10, size 50, p .5)[1] 5Slide 17/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Standard summaries are very easy m3 lm( height sex father mother nkids, data g) summary(m3)Estimate Std. Error t value Pr( t )(Intercept) 16.187712.793875.794 9.52e-09sexM5.209950.14422 36.125 2e-16father0.398310.02957 13.472 2e-16mother0.320960.03126 10.269 2e-16nkids-0.043820.02718 -1.6120.107 anova(m3)Df Sum Sq Mean SqF value Pr( F)(Intercept)1 4002377 4002377 8.6392e 05 2e-16sex158755875 1.2680e 03 2e-16father110011001 2.1609e 02 2e-16mother1490490 1.0581e 02 2e-16nkids11212 2.5992e 00 0.1073Residuals89341375Note:I added the Interceptterm toUsingtheR forAnovatable. R lets meSlide 18/35Daniel KaplanIntroductory Calculus and Statistics

Extensibility is important to teachingExample 1: the t-test, Anova, and regression.I want to show these are different aspects of the same thing. t.test(g height)t 558.37, df 897, p-value 2.2e-16 summary( lm( height 1, data g ) )Estimate Std. Error t value Pr( t )(Intercept) 66.76070.1196558.4 2e-16 anova( lm( height 1, data g ) )Df Sum Sq Mean Sq F valuePr( F)(Intercept)1 4002377 4002377 311777 2.2e-16Residuals8971151513 sqrt(311777)[1] 558.37Slide 19/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Similarly with the 2-sample t-test t.test( g height g sex, var.equal TRUE)t -30.5481, df 896, p-value 2.2e-16 summary(lm( height sex, data g))Estimate Std. Error t value Pr( t )(Intercept) 64.11020.1206 531.70 2e-16sexM5.11870.167630.55 2e-16 anova(lm( height sex, data g))Df Sum Sq Mean SqF valuePr( F)(Intercept)1 4002377 4002377 635783.45 2.2e-16sex158755875933.18 2.2e-16Residuals89656406 sqrt(933.18)[1] 30.54800Slide 20/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Extensibility is important: Example 2How Anova Works.Let’s add k random, junky terms to a model and see how R 2 orthe fitted sum of squares changes.rand(k) notation added to modeling language.ModelR2 R 2footwidth 1 sex footlength0.4596footwidth 1 sex footlength rand(1)0.4824 0.02284footwidth 1 sex footlength rand(2)0.4911 0.00873footwidth 1 sex footlength rand(3)0.4941 0.00297. and so on .footwidth 1 sex footlength rand(34) 0.9676 0.00365footwidth 1 sex footlength rand(35) 0.9820 0.01440footwidth 1 sex footlength rand(36) 1.0000 0.01799footwidth 1 sex footlength rand(37) 1.0000 0.00000footwidth 1 sex footlength rand(38) 1.0000 0.00000Slide 21/35Daniel KaplanUsing R for Introductory Calculus and Statistics

The Modeling WalkA model with 3 model terms fit to data with 39 cases.1.0R 2 versus m footlength0.80.6 Intercept0.20.4x0.0 sexR2 xm 39 Terms fit the N 39 cases perfectly x14Random Terms39m (number of explanatory vectors in model)Slide 22/35Daniel KaplanUsing R for Introductory Calculus and Statistics

ResamplingResampling itself is a conceptually simple operation. resample( c(1,2,3), 10)[1] 1 3 1 1 3 3 3 1 1 2 resample( g, 5)family father mother sex height Slide 23/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Repetition is conceptually simple, but . generally hard for neophytes to implement on the computer.Not in R!Example: Roll three dice and add them. sum( resample( 1:6, 3) )[1] 8Now do this 50 times: repeattrials( sum( resample( 1:6, 3) ), 50 )[1] 14 6 12 10 7 13 13 11 13 10 11 6 7 5 16 14 11 13[19] 16 7 7 9 6 10 8 10 7 15 10 14 12 14 8 11 4 10[37] 14 10 12 10 8 12 12 8 7 4 17 16 10 11Slide 24/35Daniel KaplanUsing R for Introductory Calculus and Statistics

BootstrappingBootstrapping is hardly ever done in introductory statistics courses,even though it is so simple conceptually. This is because there islittle computational support beyond the black-box type.Histogram of s100500Frequency150 mean( resample( g height ) )[1] 66.64577 mean( resample( g height ) )[1] 66.76303 s repeattrials(mean( resample( g height ) ), 500 ) hist(s) quantile( s, c(0.025, 0.975) ) 66.42.5%97.5%66.52771 66.97620Slide 25/35Daniel Kaplan66.666.867.0sUsing R for Introductory Calculus and Statistics67.2

A command-line interface has big advantagesIt allows us to put things together in creative ways.Example 1: Confidence intervals on model coefficients. lm( height sex nkids, data g )(Intercept)sexMnkids64.80135.0815-0.1095 lm( height sex nkids, data resample(g) )(Intercept)sexMnkids64.737655.15831-0.09852 s repeattrials(lm( height sex nkids,data resample(g) ) coef, 1000) head(s)(Intercept)sexMnkids165.01683 5.323394 -0.1664674264.64250 5.262300 -0.1005491364.75436 5.113593 -0.1079453and so on quantile( s nkids, c(0.025, 0.975))Slide 26/35Daniel KaplanUsing R for Introductory Calculus and Statistics2.5%97.5%

Resampling: Example 2Hypothesis testing on single variables: lm( height sex nkids, data g )(Intercept)sexMnkids64.80135.0815-0.1095 lm( height sex resample(nkids), data g )(Intercept)sexM resample(nkids)64.006885.125030.01628 s repeattrials(lm( height sex resample(nkids),data g ) coef, 1000) head(s)(Intercept)sexM resample(nkids)163.99812 5.1176720.01821168264.18064 5.119589-0.01154208and so on quantile( s[,3], c(0.025, 0.975))2.5%97.5%-0.05690810 0.05361429Slide 27/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Resampling: Example 3Power/Sample-size demonstration. If the world were like oursample, how likely is a sample of 100 people to demonstrate thatfamily size (nkids) is related to height?# Extract the p-value on nkids anova( lm(height sex nkids, data g))[3,5][1] 0.0004454307# Simulate a sample of size 100 anova( lm(height sex nkids, data resample(g,100)))[3,[1] 0.2743715 s repeattrials(anova( lm(height sex nkids, data res head(s)[1] 0.001870581 0.498089249 0.801042654 0.286201801[5] 0.055200572 0.198855304 and so on table( s .05 )FALSE TRUE774226# power is 23%Slide 28/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Distribution of p-valuesUnder the null: s repeattrials(anova( lm(height sex resample(nkids), data g))[3,5],1000)60020Frequency100p values under Null Hyp.0.00.20.40.60.81.0sIt would be nice to have a GUI that can support this kind of thing.How?Slide 29/35Daniel KaplanUsing R for Introductory Calculus and Statistics

GUIs are ImportantExamples from our courses:IEuler method of integration.IVisualizing dynamics on the phase plane.ILinear combinations of vectors.future simulating causal networks.Slide 30/35Daniel KaplanUsing R for Introductory Calculus and Statistics

A graphical approach to integrationThe logistic-growthsystem:ẋ rx(1 x/K )Slide 31/35Daniel KaplanIThe differentialequation describeslocal dynamics.IGrowth ratechanges with x.IAccumulate smallincrements.Using R for Introductory Calculus and Statistics

20001500It’s also calculus to teach thephenomenology of differentialequations:1000 500 Iequilibrium and stabilityIoscillation0Computers can solve the DEs,so solution techniques are nolonger central.0500Slide 32/35100015002000Daniel KaplanUsing R for Introductory Calculus and Statistics

Fitting Linear ModelsA32B-34C2 Fit the model A B C - 10Slide 33/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Fitting Linear ModelsA32B-34C2 Fit the model A B C - 10Slide 33/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Fitting Linear ModelsA32B-34C2 Fit the model A B C - 10Slide 33/35Daniel KaplanUsing R for Introductory Calculus and Statistics

Local Requirements for Adopting RIA locally accessible expert.IConcise instructions on how to do basic things. Like KermitSigmon’s Matlab Primer.IThings are vastly better than they once were, but still wedon’t exploit the 80/20 rule:20% of the knowledge will get you 80% of the way there!Slide 34/35Daniel KaplanUsing R for Introductory Calculus and Statistics

SummaryIGUIs are important, but .IWe should embrace R’s strength, an extensible command-lineinterface and syntax.Slide 35/35Daniel KaplanUsing R for Introductory Calculus and Statistics

SummaryIGUIs are important, but .IWe should embrace R’s strength, an extensible command-lineinterface and syntax.Slide 35/35Daniel KaplanUsing R for Introductory Calculus and Statistics

I Math majors are required to take statistics (very unusual!). They take it after linear algebra. I About 2/3 of calculus students have had some calculus in high school. I About 1/3 of statistics students have had an AP-type statistics course in high school. Slide 7/35 Daniel Kaplan Using R for Introductory

Related Documents:

Bruksanvisning för bilstereo . Bruksanvisning for bilstereo . Instrukcja obsługi samochodowego odtwarzacza stereo . Operating Instructions for Car Stereo . 610-104 . SV . Bruksanvisning i original

10 tips och tricks för att lyckas med ert sap-projekt 20 SAPSANYTT 2/2015 De flesta projektledare känner säkert till Cobb’s paradox. Martin Cobb verkade som CIO för sekretariatet för Treasury Board of Canada 1995 då han ställde frågan

service i Norge och Finland drivs inom ramen för ett enskilt företag (NRK. 1 och Yleisradio), fin ns det i Sverige tre: Ett för tv (Sveriges Television , SVT ), ett för radio (Sveriges Radio , SR ) och ett för utbildnings program (Sveriges Utbildningsradio, UR, vilket till följd av sin begränsade storlek inte återfinns bland de 25 största

Hotell För hotell anges de tre klasserna A/B, C och D. Det betyder att den "normala" standarden C är acceptabel men att motiven för en högre standard är starka. Ljudklass C motsvarar de tidigare normkraven för hotell, ljudklass A/B motsvarar kraven för moderna hotell med hög standard och ljudklass D kan användas vid

5500 AP Calculus AB 9780133311617 Advanced Placement Calculus: Graphical Numerical Algebraic 5511 AP Calculus BC n/a Independent 5495 Calculus 9781133112297 Essential Calculus 5495 Calculus - optional - ebook 9780357700013 Essential Calculus Optional ebook . 9780134296012 Campbell Biology 9th Ed

webwork answers calculus, webwork answers calculus 2, webwork answers calculus 3, webwork solutions calculus 3, webwork answer key calculus In Algebra and Geometry, the WebWork assignment must be finished by 10pm . Students in our Calculus 1-3

Lesson Plan: Teaching Introductory Calculus (Differentiation) using Atmospheric CO 2 Data As a high school or undergraduate Mathematics teacher, you can use this set of computer-based tools to help you in teaching topics such as differentiation, derivatives of polynomials, and tangent line problems in Introductory Calculus. This lesson plan

MATH 210 Single Variable Calculus I Early Transcendentals (4) o Allan Hancock College : MATH 181 Calculus 1 5 o American River College : MATH 400 Calculus I 5 o Berkeley City College : MATH 3A Calculus I 5 o Cabrillo College : MATH 5A Analytic Geometry and Calculus I 5 o Canada College : MATH 251 Analytical Geometry and Calculus I 5

02 - tensor calculus 1 02 - tensor calculus - tensor algebra tensor calculus 2 tensor the word tensor was introduced in 1846 by william rowan hamilton . it was used in its current meaning by woldemar voigt in 1899. tensor calculus was deve-loped around 1890 by

Honors Calculus and AP Calculus AB Readiness Summer Review This package is intended to help you prepare you for Honors Calculus and/or AP Calculus AB course this next fall by reviewing prerequisite algebra and pre-calculus skills. You can use online resources to review the learned concepts as well as your class notes from previous years.

AP Calculus AB Summer Homework Name _ Dear Future Calculus Student, I hope you are excited for your upcoming year of AP Calculus! . concepts needed to be successful in calculus. Please submit this packet during your second calculus class period this fall. It will be graded. . final answers MUST BE BOXED or CIRCLED. 2 Part 1 - Functions .

AP Calculus Multiple Choice Question Collection 1969 – 1998 AP Calculus Free Response Questions and Solutions 1989 – 1997 References apcentral.collegeboard.com AP Calculus Workshop Handbook 2011-2012 AP Calculus AB and BC Course Description Effective Fall 2012 AP Calculus Teacher’s Guide

och krav. Maskinerna skriver ut upp till fyra tum breda etiketter med direkt termoteknik och termotransferteknik och är lämpliga för en lång rad användningsområden på vertikala marknader. TD-seriens professionella etikettskrivare för . skrivbordet. Brothers nya avancerade 4-tums etikettskrivare för skrivbordet är effektiva och enkla att

Den kanadensiska språkvetaren Jim Cummins har visat i sin forskning från år 1979 att det kan ta 1 till 3 år för att lära sig ett vardagsspråk och mellan 5 till 7 år för att behärska ett akademiskt språk.4 Han införde två begrepp för att beskriva elevernas språkliga kompetens: BI

**Godkänd av MAN för upp till 120 000 km och Mercedes Benz, Volvo och Renault för upp till 100 000 km i enlighet med deras specifikationer. Faktiskt oljebyte beror på motortyp, körförhållanden, servicehistorik, OBD och bränslekvalitet. Se alltid tillverkarens instruktionsbok. Art.Nr. 159CAC Art.Nr. 159CAA Art.Nr. 159CAB Art.Nr. 217B1B

produktionen sker på ett reproducerbart sätt. Alla geler som produceras testas därför för att kontrollera att de upprätthåller den kvalité som krävs för produktion av läkemedel. De biologiska läkemedlen kan sorteras på olika egenskaper och för geler som separerar med

Vector Calculus. By Michaei Corral, www. mecmath.net, 2008. 1 1.00. vi-f2l3 pp., soft-cover (free electronic download available). Vector Calculus is a traditional treatment of the topics covered in a third-semester calculus course, often called "Multivari-ate Calculus" or just "Cale III." While the treatment may be traditional, the

454482/454484 ap calculus ab calculus concepts & applications 9781559536547 ** 125.00 ap calc (ab) exam 9th ed. ppb (2nd sem buy in bookstore) 1-934780-08-1 23.00 454682/454684 ap calculus bc calculus ap 10th edition textbook 9781305952911 ** 125.00 calculus ap 10th edition e code - pay online 978133722737

Christian Parkinson GRE Prep: Calculus II Notes 1 Week 2: Calculus II Notes We concluded the Calculus I notes with Riemann integration, Fundamental Theorem of Calculus and some helpful integration techniques. However, ofter times, you will be asked to identify whether an integral conv

A01 , A02 or A03 Verification of prior exempUcivil after exempt service must be on file with the X appointment (when appointing power. there is no break in service). A01 , A02 or A03 (to Copy of employee's retirement PM PPM X a permanent release letter from PERS must be 311.5, 360.3 appointment) after a on file with the appointing power.