Error when using fitrm — Fit Repeated Measures Model for RM ANOVA

Technical Source
2 min readJul 15, 2022

--

I am trying to perform repeated measures ANOVA using the fitrm function, but keep getting the following error:

*Error using eig*
*Input matrix contains NaN or Inf.*

I’ve created a minimal working example based on the Matlab documentation for fitrm, but with some of my own variables (my actual list of measurements is much longer). I am trying to determine if the measurements from the 4 participants can be considered as statistically equivalent, while preserving the relationship between the data points (so all L1 data was collected at location 1 for all participants, L2 was collected at location 2, etc).

Here is my minimal example code (including data):

% Data collected from 4 participants in 3 locations. 
% Each row is a participant, each column is a location
measurements = [ 112.7258 92.2979 82.5488;
123.7502 113.2852 84.8053;
106.8964 93.9526 70.9359;
107.3634 85.2672 65.7928]
P_Name = ['A' 'B' 'C' 'D']' % participant name %Create a table, Data comes first, Variable names second
t = table(P_Name,measurements(:,1),measurements(:,2),measurements(:,3),'VariableNames',{'Participant','L1','L2','L3'})
% Create a location variable for the measurements
Location = table([1 2 3]','VariableNames',{'Location'})
% Fit repeated measures model
rm = fitrm(t,'L1-L3~Participant','WithinModel',Location)

Any help is greatly received.

NOTE:-

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help , Finance Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

This seems like a slightly nonstandard problem to me so I am not sure, but here is one way you might approach it.

measurements = [...];
AllCombos = allcomb(1:3,1:4); % From MATLAB file exchange
[a, b, c] = anovan(measurements(1:end),AllCombos,'Model','full');

anovan basically fits an additive model where each score is decomposed into a sum of a constant, a participant effect, a location effect, and a residual. The Sum Sq. column of the anovan output gives you a breakdown of the sums of squares for the participant, location, and residual terms.

Note that the error is zero. This is because you have only 1 score per participant/location combination, so there is no way to

SEE COMPLETE ANSWER CLICK THE LINK

--

--

Technical Source
Technical Source

Written by Technical Source

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.