Holcombe:ProgrammingInR: Difference between revisions
Polly Barr (talk | contribs) No edit summary |
|||
(32 intermediate revisions by 2 users not shown) | |||
Line 13: | Line 13: | ||
There is a wiki with some good tips [http://wiki.r-project.org/rwiki/doku.php?id=start here]. Also | There is a wiki with some good tips [http://wiki.r-project.org/rwiki/doku.php?id=start here]. Also | ||
[http:// | [http://rwiki.sciviews.org/doku.php?id=tips:tips#data Data frame tips], [http://alittleknowledge.wordpress.com/2009/09/11/r-for-pedestrians/ list of R websites] | ||
Functions in R can only return one parameter. | Functions in R can only return one parameter. | ||
Examining your data | ===dataframe tips=== | ||
Examining your data frame or object, let's say it's called ''datos'' | |||
typeof(datos) #returns "list!" | |||
str(datos) #tells you it's a dataframe, number of observations, columns, etc | |||
head(datos) | head(datos) | ||
str(datos) | str(datos) | ||
summary(datos) #good for ggplot objects also | |||
df$varWithExtraLevels = factor(df$varWithExtraLevels) | |||
length(df) #number of columns of dataframe | |||
names(df) #names of columns of dataframe | |||
library(Hmisc); | |||
describe(df) | |||
= | #Calling typeof() on a dataframe returns "list" | ||
rm(objectToBeDeleted) | |||
rm(list = ls()) #Delete nearly everything in memory | |||
expand.grid() to create dataframe with every combination of some factors | |||
Check your counterbalancing in your results file. Make a contingency table, | |||
table(dataRaw$speed,dataRaw$relPhaseOuterRing) | |||
== | Replace certain value with another | ||
thr$thresh[ thr$task=='ident' ] = NA | |||
==Creating Graphs (usu. ggplot2)== | |||
how I [[Holcombe:fit psychometric functions]] and bootstrap | |||
See http://openwetware.org/wiki/Holcombe:Plotting | |||
==Debugging in R== | ==Debugging in R== | ||
Line 56: | Line 60: | ||
STOP | STOP | ||
== | After an error, calling traceback() gives you the stack | ||
==doing ANOVAs etc== | |||
[http://ww2.coastal.edu/kingw/statistics/R-tutorials/formulae.html Understanding model formulae] | |||
[http://ww2.coastal.edu/kingw/statistics/R-tutorials/repeated.html ANOVA with repeated measures] walk-through | |||
[http://www.personality-project.org/r/r.anova.html some aov (ANOVA) explanation] | |||
[http://books.google.com.au/books?id=yULf2kZSfeMC&pg=PA303&lpg=PA303&dq=r+linear+model+lm+continuous+and+discrete+factor&source=bl&ots=t82xDTuDaL&sig=EVVrHZ08lC80MGvJUQDNLg948Mc&hl=en&ei=_CO3SdOsG5mktQPZxYjsAQ&sa=X&oi=book_result&resnum=1&ct=result#PPA303,M1 R will assume factor is regressor if numeric] | |||
I think I had [http://tolstoy.newcastle.edu.au/R/help/04/08/2136.html too many error terms] | |||
[http://books.google.com.au/books?id=ptbcCBSWvvQC&pg=PA359&lpg=PA359&dq=ANOVA+within-subjects++pooled+error+term&source=bl&ots=73eFDsaw8l&sig=ReTGWRjNFGnYQ4DF-D6qAE9qJgQ&hl=en&ei=cKu4Sd7CPIr2sAPSw4Q8&sa=X&oi=book_result&resnum=8&ct=result reducing error terms] | |||
[http://blog.gribblelab.org/2009/03/09/repeated-measures-anova-using-r/ Anovas with repeated measures] can be complicated in R. | |||
We have some R books in the lab | |||
==Dealing with circular data== | |||
von Mises vs. wrapped Gaussian, | |||
see Swindale, N. V. (1998). Orientation tuning curves: empirical description and estimation of parameters. Biol Cybern, 78(1), 45-56. |
Latest revision as of 18:29, 6 June 2017
Recent members• Alex Holcombe
|
Projects• Testing Booth Calendar |
|
Technical• Skills Checklist |
Other• Plots,Graphs
|
R is an interactive programming language for statistics. The syntax is very idiosyncratic, and not really in a good way. Try R for programmers for a description. However it may have menu-driven versions maybe available R commander we haven't tried that and another one is pmg GTK maybe here
In the lab we have the book Using R for Introductory Statistics. R_Statistics introduces you to R
Dani has posted some example code and graphs on his personal website.
R reference cheatsheet, also a file here Media:Matlab-python-xref.pdf that gives equivalent code for doing array operations in MATLAB, Python, and R plot parameters
There is a wiki with some good tips here. Also Data frame tips, list of R websites
Functions in R can only return one parameter.
dataframe tips
Examining your data frame or object, let's say it's called datos
typeof(datos) #returns "list!" str(datos) #tells you it's a dataframe, number of observations, columns, etc head(datos) str(datos) summary(datos) #good for ggplot objects also
df$varWithExtraLevels = factor(df$varWithExtraLevels)
length(df) #number of columns of dataframe
names(df) #names of columns of dataframe
library(Hmisc); describe(df)
#Calling typeof() on a dataframe returns "list"
rm(objectToBeDeleted) rm(list = ls()) #Delete nearly everything in memory
expand.grid() to create dataframe with every combination of some factors
Check your counterbalancing in your results file. Make a contingency table,
table(dataRaw$speed,dataRaw$relPhaseOuterRing)
Replace certain value with another
thr$thresh[ thr$task=='ident' ] = NA
Creating Graphs (usu. ggplot2)
how I Holcombe:fit psychometric functions and bootstrap
See http://openwetware.org/wiki/Holcombe:Plotting
Debugging in R
How to examine and try things with a questionable variable within a function?
ee <<- resultsMeans #make global, violating all principles of good coding #DEBUG STOP
After an error, calling traceback() gives you the stack
doing ANOVAs etc
ANOVA with repeated measures walk-through
R will assume factor is regressor if numeric
I think I had too many error terms reducing error terms
Anovas with repeated measures can be complicated in R.
We have some R books in the lab
Dealing with circular data
von Mises vs. wrapped Gaussian,
see Swindale, N. V. (1998). Orientation tuning curves: empirical description and estimation of parameters. Biol Cybern, 78(1), 45-56.