reading values from file
1 view (last 30 days)
Show older comments
I am trying to read values from an excel csv file using 89 patient's data with the 13 variables show. I then use if else statements and a decision tree to decide if patient has heart disease. I am having trouble using csvread and am unsure of how to get this piece of code to work. I have been told i should use a matrix to help. Any suggestions on how I could fix this code
data = csvread('C:\Users\User\Documents\Signal processing\testData CW1.csv');
for i = 1:89
patient_Age = data(i,1);
patient_Gender = data(i,2);
patientChestPain = data(i,3);
patientRestingBP = data(i,4);
Serum_Cholestorol = data(i,5);
Fasting_BloodSugar = data(i,6);
Resting_ECG = data(i,7);
maximum_HR = data(i,8);
exercise_Angina = data(i,9);
ST_Depression = data(i,10);
ST_Slope = data(i,11);
flouro_Results = data(i,12);
heart_Condition = data(i,13);
end
1 Comment
Answers (1)
Philippe Lebel
on 19 Nov 2019
You are over writing the variables each loop!
I'd do it this way:
data = csvread('C:\Users\User\Documents\Signal processing\testData CW1.csv');
patient_Age = data(:,1);
patient_Gender = data(:,2)
patientChestPain = data(:,3);
...
4 Comments
Philippe Lebel
on 19 Nov 2019
it's because now you have lists containing 89 data each.
for i = 1:length(patient_Age)
if (patient_ChestPain(i) >3) && (Serum_Cholestorol(i) <=0)
disp("Patient has heart disease")
elseif (patient_ChestPain(i) >3) && (Serum_Cholestorol(i) >0) && (ST_Depression(i) >0.8) && (ST_Slope(i) >1)
disp("Patient has heart disease")
end
end
See Also
Categories
Find more on Biological and Health Sciences in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!