Tutor profile: James C.
Subject: R Programming
What can I use R for?
Since R's inception, so many packages have been created, and tutorials/books written, on the subject that it is much more than a basic statistics software program. However, there is something to be said about the fact that R was created by statisticians FOR statisticians. One outcome is that it is great for doing statistical work -- much better than many programs available. However, it is not very good at doing functional programming. That is, although functional programming is possible, R was created primarily as an object-oriented progamming language. As such, R can be used for a variety of statistical jobs. One drawback of R is that all objects are stored in R's memory. Heavy memory storage can quickly lead to memory leaks (i.e., an overload of the "short-term" memory of your computer, or RAM). There are ways to get around this issue. For instance, packages now exist for one to use R along with SQL and other databases. This way, we only need to read inputs into R without storing massive datasets. Other than statistics, R is amazing for data vizualization. We can not only make beautiful, publication quality graphics, but we can also use R to create interactice graphics, such as dashboards or applets. We would typically perform such actions with "RShiny". Shiny allows us to create interactive charts, tables, and dashboards. In addition, R can do a variety of things that people are unaware of. You can use R to write a book (seriously, you can write an entire book in R), set up a blog, set up a website, and embed R code into a PDF document. We typically pair R with RMarkdown (R's version of Markdown), and the "knitr" package, among others. In sum, R is a very powerful program for doing specific tasks. However, when your tasks run outside the realm of what R is capable of, such as importing very big datasets, or doing massive parallel computing, programs such as Python or Julia may be a better choice.
Subject: Computer Graphics
How do you decide which program is useful for creating computer graphics as it relates to a substantive field of study or specific problem?
I typically advice that students use a program that will do what their professor wants in relation to their graphical computations. For instance, in the context of statistics, a professor may simply want some basic graphics from SPSS. But, we can also use much more sophisticated programs such as R to create beautiful, publication quality graphics. Other times we use computer graphics for different reasons. For instance, at my current job, we construct dashboards that allow our users to explore many different variable combinations to help aid in the understanding of underlying phenomena. The creation of dashboards -- with programs such as Tableau or Power BI (the latter of which is my preferred program) -- can be quite useful in a variety of settings, include education, business, and finance.
What is the most important concept that new statistics students must learn to understand inferential statistics?
My teaching philosophy is one in which I always place an emphasis on first-principles. Within statistics, in order to understand inferential statistics (e.g., p-values, confidence intervals, etc.), you must first understand the bedrock foundation of statistics -- which is rooted in probability theory: the central limit theorem. For more advanced statistical methods, the same logic applies. But with more advanced statistics, it is the assumptions that we must remain skeptical about and be sure to meet. If we do not meet the assumptions for the test, and do not apply a correction, then all interpretation of the findings is null and void. As a result, I like to spend time not only teaching students the important concepts related to the statistical topic for which they seek help, but also to challenge their underlying knowledge to strengthen their ability to understand and grapple with abstract statistics problems.
needs and James will reply soon.