·如何把所有被试的个人信息保存在一个变量里? ●结构变量本身也可以是数组/向量或矩阵 >subject(2).id 301; subject(2).age 25; subject (2).hand =0; >subject(1).data rand(1,5); subject (2).gender =0; subject (2).data rand(1,7); subject (3).data rand(1,4); subject (3).age 43; subject (3).id 200; 子变量data的内容是数组/向量 subject(3).hand 1; subject (3).gender =0;
l 如何把所有被试的个人信息保存在一个变量里? l结构变量本身也可以是数组/向量或矩阵 子变量data的内容是数组/向量
●对结构变量的内容进行操作。 ●例如,计算每个左利手的被试的所有实验试次(triall) 的平均数据。 >count =0; for i=1:length(subject) if subject(i).hand ==0 是否为左利手被试 count count+1; 共有几个左利手被试 meanData(count)=nean(subject(i).data):计算平均数据 end end 试一试: meanData meanData(1,count)=subject(i).id; meanData(2,count)=mean(subject(i),data); meanData 0.4513 0.5012 mean是matlab自带,计算平均值 std是matlab自带,可计算标准差
l 对结构变量的内容进行操作。 l例如,计算每个左利手的被试的所有实验试次(trial) 的平均数据。 是否为左利手被试 共有几个左利手被试 计算平均数据 mean是matlab自带,计算平均值 std是matlab自带,可计算标准差 试一试: meanData(1,count)=subject(i).id; meanData(2,count)=mean(subject(i),data);
·结构变量的子变量可以是任何变量类型。 >subject(1).hand='1eft';子变量hand的类型是字符串 >subject(1) ans id:213 age:28 hand:'left' gender:1 data:[0.15880.59970.47890.88520.1340]
l 结构变量的子变量可以是任何变量类型。 子变量hand的类型是字符串
●结构变量的子变量(fields)也可以是结构变量! >animalSubject(1).id 23; animalSubject(1).data rand(1,5); animalSubject(2).id 46; animalSubject(2).data rand(1,4); >allSubjects.human(3).age >allSubjects.human subject; allSubjects.animal animalSubject ans allSubjects 43 allSubjects 子变量animal和自变量human的 human:[1x3 struct] 类型都是结构变量 animal:[1x2 struct]
l 结构变量的子变量(fields)也可以是结构变量! 子变量animal和自变量human的 类型都是结构变量
4.3单元变量(cell) 。如何把不同长度的字符串放在一个变量里? >days =['Monday','Iuesday','Wednesday','Ihursday','Friday' days MondayTuesdayWednesdayThursdayFriday >days ['Monday';'Tuesday';'Wednesday';'Thursday';'Friday' ??Error using ==vertcat CAI arguments dimensions are not consistent. >>days Monday','Iuesday','Wednesday','Thursday','Friday'} days 'Monday' Iuesday' 'Wednesday' Thursday' 'Friday
l 如何把不同长度的字符串放在一个变量里?