Pairwaise Mutual Information Calculation

I am trying to estimate the Mutual Information for pairwise combinations for the whole matrix (which is an EEG data). I use the functions defined here link. And I use following code to estimate this pairwise.
Data=csvread('data.csv'); % loads the EEG data.
% MI for pair of recordings in EEG
n=size(Data,1);% Number of Chanenls in EEG data
MICs=zeros(n,n);
for i=1:n
for j=1:n
one=Data(i,:);
two=Data(j,:);
miin=h(one')+h(two')-h([one',two']);
MIC(i,j)=miin;
end
end
  1. I see different ways to estimate the MI's, however I had written my code above to verify.
  2. When I tried to estimate the Mean(average) value of MI for all the pairs, Should I remove the diagonals values (which corresponds to the MI for its own pair) and the duplicates values (as the matrix is an outcome of the pairwise estimation).?
  3. Or Should I just estimate the mean for the whole matrix which is an outcome of the above code?

4 commentaires

Make it easy for people to help you, not hard, by attaching whatever filename "data" is with the paperclip icon.
By the way, it's not a good idea to have "data" be both the filename string used in load, and the numerical data variable. For example since "data" is the filename,
n=size(data,1);
will give the length of your filename string (number of characters in it), not the number of rows in some numerical array.
Sorry for that confusion. I made updates to the code, so to make it better. Ideally I am constructing a matrix of nxn with pairwise mutual information for the EEG data.
madhan ravi
madhan ravi le 24 Déc 2018
you didn't attach your data
I have uploaded the data in CSV format due to its size. And Updated the code as well accordingly to load the data. Thanks for your willingness to help.

Connectez-vous pour commenter.

Réponses (0)

Catégories

Produits

Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by