Presentation is loading. Please wait.

Presentation is loading. Please wait.

Prepared by volunteers of the Ann Arbor Chapter of the American Statistical Association, in cooperation with the Department of Statistics and the Center.

Similar presentations


Presentation on theme: "Prepared by volunteers of the Ann Arbor Chapter of the American Statistical Association, in cooperation with the Department of Statistics and the Center."— Presentation transcript:

1 Prepared by volunteers of the Ann Arbor Chapter of the American Statistical Association, in cooperation with the Department of Statistics and the Center for Statistical Consultation and Research of the University of Michigan

2  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 2

3 3 http://sites.google.com/site/annarborasa/  Presentation Materials  R Class Materials  Select files:  R Workshop.pptx  furniture.csv  furniture.txt  R code.docx  Short-refcard.pdf  Save upload of each files to Desktop Ann Arbor ASA Up and Running Series: R

4  R is open source with code available to users  R is object-oriented programming  involves the S computer language  R is a commonly used for statistical analysis  R is a free software package  R-project.org R-project.org Ann Arbor ASA Up and Running Series: R 4

5 5

6  Statistical analysis is done using pre-defined functions in R.  Upon download of the ‘base’ package, you have access to many functions.  More advanced functions will require the of download other packages. Ann Arbor ASA Up and Running Series: R 6

7  Topics in statistics are readily available  Linear modeling, linear mixed modeling, clustering, multivariate analysis, non-parametric methods, classification, among others.  R produces high quality graphics  Simple plots are easy  With more practice, users can produce publishable graphics! Ann Arbor ASA Up and Running Series: R 7

8  Start  All Programs  Math & Statistics  R Ann Arbor ASA Up and Running Series: R 8 Workspace

9  Get Editor window: File  New script  More convenient than workspace Ann Arbor ASA Up and Running Series: R 9 Workspace Editor window

10  Users create different data objects in R  Data objects refer to variables, arrays of numbers, character strings, functions and other more complicated data manipulations  <- allows you to assign data objects  Type in your editor window: a <- 7  Submit this command by highlighting it and pressing ctrl+r  Practice creating different data objects and submit them to the workspace Ann Arbor ASA Up and Running Series: R 10

11  Type objects ()  This allows you to see that you have created the object a during this R session  You can view previously submitted commands by using the up/down arrow  You can remove this object by typing rm(a)  Try removing some objects you created and then type objects() to see if they are listed Ann Arbor ASA Up and Running Series: R 11

12  Set up vector named x:  x <- c(5,4,3,6)  This is an assignment statement  the function c() creates a vector by concatenating its arguments  Perform vector/matrix arithmetic:  v <- 3*x - 5 Ann Arbor ASA Up and Running Series: R 12

13 Ann Arbor ASA Up and Running Series: R 13 Questions?

14  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 14

15  CRAN: Search  R archives (manuals, mail, help files, etc.)  faced with a tough analysis question  see if another R user has addressed the question before Ann Arbor ASA Up and Running Series: R 15

16  To get help on any specific function:  help( function.name )  ?( function.name )  Sometimes help is not available from the packages downloaded  ??( function.name ) Ann Arbor ASA Up and Running Series: R 16

17  To see a list of all of the functions that come with the base R package  library(help = “base”)  Error: unexpected input in "library(help = ““  library(help = "base") Ann Arbor ASA Up and Running Series: R 17

18  Two popular R resource websites:  Rseek.org  nabble.com Ann Arbor ASA Up and Running Series: R 18

19  For help via the Internet submit  help.start() Ann Arbor ASA Up and Running Series: R 19

20 Ann Arbor ASA Up and Running Series: R 20 Questions?

21  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 21

22  There are thousands of available functions in R  Reference Card provides a strong working knowledge  Look at the organization of the Reference Card  Try out a few of the functions available! Ann Arbor ASA Up and Running Series: R 22

23 Ann Arbor ASA Up and Running Series: R 23

24  Sequences  seq(-5, 5, by=.2)  seq(length=51, from=-5, by=.2)  Both produce a sequence from -5 to 5 with a distance of.2 between objects Ann Arbor ASA Up and Running Series: R 24

25  Replications  rep(“x”, times=5)  rep(“x”, each=5)  Both produce x replicated 5 times Ann Arbor ASA Up and Running Series: R 25

26 Ann Arbor ASA Up and Running Series: R 26 Questions?

27  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 27

28  There are many data sets available for use in R  data()  to see what’s available  We will work with the trees data set  data(trees)  This data set is now ready to use in R  The following are useful commands:  summary(trees) – summary of variables  dim(trees) – dimension of data set  names(trees) – see variable names  attach(trees) – attaches variable names Ann Arbor ASA Up and Running Series: R 28

29  R has saved the data set trees as a data frame object  Check this by typing - class(trees)  R stores this data in matrix row/column format: data.frame[rows,columns]  trees[c(1:2),2]  first 2 rows and 2 nd column  trees[3,c(“Height”, “Girth”)]  reference column names  trees[-c(10:20), “Height”]  skips rows 10-20 for variable Height Ann Arbor ASA Up and Running Series: R 29

30  The subset() command is very useful to extract data in a logical manner, where the 1 st argument is data, and the 2 nd argument is logical subset requirement  subset(trees, Height>80)  subset where all tree heights >80  subset(trees, Height 10)  subset where all tree heights 10  subset(trees, Height 11)  subset where all tree heights 11 Ann Arbor ASA Up and Running Series: R 30

31 Ann Arbor ASA Up and Running Series: R 31 Questions?

32  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 32

33  The most common (and easiest) file to import is a text file with the read.table() command  R needs to be told where the file is located  set the working directory setwd("C:\\Users\\akazanis\\Desktop")  tells R where all your files are located  OR point to working directory  File  Change dir… and choosing the location of the files  OR include the physical location of your file in the read.table() command Ann Arbor ASA Up and Running Series: R 33

34  Include the physical location of your file in the read.table() command read.table("C:\\Users\\akazanis\\Desktop\\furniture.txt",header=TRUE,sep="")  Important to use double slashes \\  rather than single slash \  header=TRUE or header=FALSE  Tells R whether you have column names on data Ann Arbor ASA Up and Running Series: R 34

35  Another way of specifying the file’s location is to set the working directory first and then read in the file  setwd(“C:\\Users\\akazanis\\Desktop”)  read.table(“furniture.txt”,header=TRUE,sep=“”)  OR point to the location File  Change dir… pointing to the file’s location  Then, read in the data file read.table(“furniture.txt”,header=TRUE,sep=“”) Ann Arbor ASA Up and Running Series: R 35

36  It is also popular to import csv files since excel files are easily converted to csv files  read.csv() and read.table() are very similar although, they handle missing values differently  read.csv() automatically assigns an ‘NA’ to missing values  read.table() will not load data with missing values  Assign ‘NA’ to missing values before reading it into R Ann Arbor ASA Up and Running Series: R 36

37  Let’s remove a data entry from both furniture.txt and furniture.csv  From the first row, erase 100 from the Area column  Now read in the data from these two files using read.table() and read.csv()  You should see that you cannot read the data in using the read.table() command unless you input an entry for the missing value Ann Arbor ASA Up and Running Series: R 37

38  *** When you download R, automatically obtain the foreign package***  Submit library(foreign)  many more options for importing data:  read.xport(), read.spss(), read.dta(), read.mtp()  For more information on these options, submit help(read.xxxx) Ann Arbor ASA Up and Running Series: R 38

39  You can export data by using the write.table() command write.table(trees,“treesDATA.txt”,row.names=FALSE,sep=“,”)  Specifies that we want the trees data set exported  Type in name of file to be exported.  By default R writes file to working directory already specified unless you give a location  row.names=FALSE  tells R that we do not wish to preserve the row names  sep=“,”  data set is comma delimited Ann Arbor ASA Up and Running Series: R 39

40 Ann Arbor ASA Up and Running Series: R 40 Questions?

41  Introduction  R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 41

42  Assign a name to the furniture data set, as we read it in, to do some analysis furn<-read.table(“furniture.txt”,sep=“”,h=T)  To examine data set  dim(furn)  summary(furn)  names(furn)  attach(furn)  It is important to attach before subsequent steps with the data Ann Arbor ASA Up and Running Series: R 42

43  R can produce very simple and very complex graphs  Make a simple scatter plot of the Area and Cost variables from the furniture data set  plot(Area,Cost,main=“Area vs Cost”,xlab=“Area”,ylab=“Cost”)  Area on the x-axis  Cost on the y-axis  Title and labels the axes Ann Arbor ASA Up and Running Series: R 43

44  Variables distribution using graphs in R  hist(Area) – histogram of Area  hist(Cost) – histogram of Cost  boxplot(Cost ~ Type) – boxplot of Cost by Type Ann Arbor ASA Up and Running Series: R 44

45  We can make the boxplot much prettier boxplot(Cost~Type,main=“Boxplot of Cost by Type”, col=c(“orange”,“green”,“blue”), xlab=“Type”, ylab=“Cost”) Ann Arbor ASA Up and Running Series: R 45

46  Scatter plot matrix of all variables in a data set using the pairs() function  pairs(furn)  Correlation/covariance matrix of numeric variables  cor(furn[,c(2:3)])  cov(furn[,c(2:3)]) Ann Arbor ASA Up and Running Series: R 46

47  Simple linear regression using the furniture data  m1<-lm(Cost ~ Area)  summary(m1)  coef(m1)  fitted.values(m1)  residuals(m1) Ann Arbor ASA Up and Running Series: R 47

48  Plot the residuals against the fitted values  plot(fitted.values(m1), residuals(m1)) Ann Arbor ASA Up and Running Series: R 48

49  Scatter plot of Area and Cost plot(Area,Cost,main=“Cost Regression Example”,xlab=“Cost”, ylab=“Area”)  abline(lm(Cost~Area), col=3, lty=1)  lines( lowess(Cost~Area), col=3, lty=2)  Interactively add a legend  legend(locator(1),c(“Linear”,“Lowess”),lty=c(1,2),col=3)  point to graph and place legend where you wish! Ann Arbor ASA Up and Running Series: R 49

50  Identify different points on the graph  identify(Area, Cost, row.names(furn))  Makes it easy to identify outliers  Use the locator() command to quantify differences between the regression fit and the loess line  locator(2)  Example - Compare predicted values of Cost when Area is equal to 50 Ann Arbor ASA Up and Running Series: R 50

51  Multivariate regression with Area and Type as predictors and Cost as response variable in model  m2<-lm(Cost ~ Area + Type)  summary(m2)  Summary of regression results, including coefficients Ann Arbor ASA Up and Running Series: R 51

52  Let’s see if the multivariate model is significantly better than the simple model by using ANOVA  anova(m1, m2)  The ANOVA table compares the two nested regression models by testing the null hypothesis that the Type predictor did not need to be in the model.  Result - the p-value<.05, there is evidence that Type is a predictor Ann Arbor ASA Up and Running Series: R 52

53  Introduction  Using R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 53

54 a) Create a sequence: start at 0 and go to 5 with a step of 0.5 b) Replicate ‘a b c’ 3 times c) Replicate ‘a’ 3 times, ‘b’ 3 times, ‘c’ 3 times in one command Ann Arbor ASA Up and Running Series: R 54

55 a) Create a sequence: start at 0 and go to 5 with a step of 0.5 b) Replicate ‘a b c’ 3 times c) Replicate ‘a’ 3 times, ‘b’ 3 times, ‘c’ 3 times in one command Ann Arbor ASA Up and Running Series: R 55

56 a) Make a histogram of Girth from trees data set. Include a title. b) Make a boxplot of Height from trees data set. Color it blue and label your axes. c) Make a scatter plot of Girth and Height. Ann Arbor ASA Up and Running Series: R 56

57 a) Make a histogram of Girth from trees data set. Include a title. b) Make a boxplot of Height from trees data set. Color it blue and label your axes. c) Make a scatter plot of Girth and Height. Ann Arbor ASA Up and Running Series: R 57

58 a) Create a simple linear model with Girth as predictor and Height as response. Extract the coefficients. b) Add Volume to the model. c) How can we tell if this model is preferred to the simpler model? Ann Arbor ASA Up and Running Series: R 58

59 a) Create a simple linear model with Girth as predictor and Height as response. Extract the coefficients. b) Add Volume to the model. c) How can we tell if this model is preferred to the simpler model? Ann Arbor ASA Up and Running Series: R 59

60 ##Problem 1 seq(0, 5, by=.5) seq(length=51,from=-5,by=.2) rep("a b c", each=3) rep(c("a", "b", "c"), each=3) ##Problem 2 data(trees) attach(trees) names(trees) hist(Girth, main="Histogram of Trees Girth") ##Problem 2 (cont) boxplot(Height, main="Boxplot of Height of Trees", col=c("blue"),xlab="Trees",ylab="Height") plot(Girth, Height, main="Girth vs Height of Trees", xlab="Height",ylab="Girth") ##Problem 3 m1<-lm(Height~Girth) summary(m1) m2<-lm(Height~Girth+Volume) summary(m2) anova(m1,m2) Ann Arbor ASA Up and Running Series: R 60

61 Ann Arbor ASA Up and Running Series: R 61 Questions?

62  Introduction  Using R Help  Functions  Working with Data  Importing/Exporting Data  Graphs + Statistics  Practice Problems  Further Resources Ann Arbor ASA Up and Running Series: R 62

63  R Project Web Page - http://www.r-project.orghttp://www.r-project.org  Left hand side of the screen,  Click on the CRAN link:  Download, Packages CRANCRAN (Comprehensive R Archive Network)  Choose one of the U.S. mirrors (http://cran.stat.ucla.edu/ is recommended)http://cran.stat.ucla.edu/ Ann Arbor ASA Up and Running Series: R 63

64  Download and Install R  Click on the folder that best describes your operating system.  When using Windows, click on the “base” subdirectory. This will allow you to download the “base R” package.  Download R 2.14.0 for Windows.  R is updated quite frequently, and the version number is always changing.  Save the *.exe file in your computer.  Double-click on the *.exe. A wizard will appear to guide through the setup of the R software on your machine.  An R icon on your desktop/taskbar gives a shortcut to R.  Double-click on this icon, and you are ready to go! Ann Arbor ASA Up and Running Series: R 64

65  Project home http://www.r-project.orghttp://www.r-project.org  Documentation http://www.r-project.org/other-docs.htmlhttp://www.r-project.org/other-docs.html  Help forum http://www.nabble.com/R-help-f13820.htmlhttp://www.nabble.com/R-help-f13820.html  Journal http://journal.r-project.org/http://journal.r-project.org/  Graphical Gallery http://addictedtor.free.fr/graphiques/http://addictedtor.free.fr/graphiques/  Graphical Manual http://bm2.genes.nig.ac.jp/RGM2/http://bm2.genes.nig.ac.jp/RGM2/  Seek http://www.rseek.org/http://www.rseek.org/ Ann Arbor ASA Up and Running Series: R 65

66  UCLA:  http://www.ats.ucla.edu/stat/r/ http://www.ats.ucla.edu/stat/r/  Harvard/MIT:  http://data.fas.harvard.edu http://data.fas.harvard.edu  An Introduction to R:  http://cran.r-project.org/doc/manuals/R-intro http://cran.r-project.org/doc/manuals/R-intro 66 Ann Arbor ASA Up and Running Series: R

67  Ann Arbor Chapter of the American Statistical Association (Ann Arbor ASA) http://sites.google.com/site/annarborasa/  R  SAS  SAS’ JMP  SPSS  Stata  Statistics with Excel  MS Access 67 Ann Arbor ASA Up and Running Series: R

68  Center for Statistical Consultation and Research (CSCAR) http://www.umich.edu/~cscar/  Statistical Analysis with R  Intermediate SAS  Using ArcGIS  Applied Structural Equation Modeling  Introduction to NVivo  Applications of Hierarchical Linear Models  Introduction to Programming in Stata  Regression Analysis  Classification and Regression Trees Using JMP  Introduction to SPSS 68 Ann Arbor ASA Up and Running Series: R

69 69 Ann Arbor ASA Up and Running Series: R


Download ppt "Prepared by volunteers of the Ann Arbor Chapter of the American Statistical Association, in cooperation with the Department of Statistics and the Center."

Similar presentations


Ads by Google