by David Lillis, Ph.D.

Sometimes you need to know if your data set contains elements that meet some criterion or a particular set of criteria.

For example, a common data cleaning task is to check if you have missing data (NAs) lurking somewhere in a large data set.

Or you may need to check if you have zeroes or negative numbers, or numbers outside a given range.

In such cases, the any() and all() commands are very helpful. You can use them to interrogate R about the values in your data. [click to continue…]

Send to Kindle


R Is Not So Hard! A Tutorial, Part 16: Counting Values within Cases

SPSS has the Count Values within Cases option, but R does not have an equivalent function. Here are two functions that you might find helpful, each of which counts values within cases inside a rectangular array…

Read the full article →

R Is Not So Hard! A Tutorial, Part 15: Counting Elements in a Data Set

Combining the length() and which() commands gives a handy method of counting elements that meet particular criteria…

Read the full article →

Random Sample from a Uniform Distribution in R Commander

Why We Needed a Random Sample of 6 numbers between 1 and 10000 As you may have read in one of our recent newsletters, this month The Analysis Factor hit two milestones: 10,000 subscribers to our mailing list 6 years in business. We’re quite happy about both, and seriously grateful to all members of our […]

Read the full article →

Spotlight Analysis for Interpreting Interactions

Not too long ago, a client asked for help with using Spotlight Analysis to interpret an interaction in a regression model.

Spotlight Analysis? I had never heard of it.

As it turns out, it’s a (snazzy) new name for an old way of interpreting an interaction between a continuous and a categorical grouping variable in a regression model…

Read the full article →

When a Variable’s Level of Measurement Isn’t Obvious

A central concept in statistics is level of measurement of variables. It’s so important to everything you do with data that it’s usually taught within the first week in every intro stats class. But even something so fundamental can be tricky once you start working with real data…

Read the full article →

Classification and Regression Trees Webinar

Cluster analysis classifies individuals into two or more unknown groups based on a set of numerical variables.

It is related to, but distinct from, a few other multivariate techniques including discriminant Function Analysis..

Read the full article →

Generalized Linear Models in R, Part 3: Plotting Predicted Probabilities

We continue with the same glm on the mtcars data set (regressing the vs variable on the weight and engine displacement).

Now we want to plot our model, along with the observed data.

Although we ran a model with multiple predictors, it can help interpretation to plot the predicted probability that vs=1 against each predictor separately. So first we fit

Read the full article →

Generalized Linear Models in R, Part 2: Understanding Model Fit in Logistic Regression Output

by David Lillis, Ph.D. In the last article, we saw how to create a simple Generalized Linear Model on binary data using the glm() command. We continue with the same glm on the mtcars data set Send to KindleRelated PostsMixed Models for Logistic Regression in SPSS Chi-square test vs. Logistic Regression: Is a fancier test […]

Read the full article →

Generalized Linear Models in R, Part 1: Calculating Predicted Probability in Binary Logistic Regression

Ordinary Least Squares regression provides linear models of continuous variables. However, much data of interest to statisticians and researchers are not continuous and so other methods must be used to create useful predictive models.

The glm() command is designed to perform generalized linear models (regressions) on binary outcome data, count data, probability data, proportion data and many other data types.

In this blog post, we explore the use of R’s glm() command on one such data type. Let’s take a look at a simple example where we model binary data.

Read the full article →