【发布时间】:2016-10-14 21:38:35
【问题描述】:
我在 .txt 文件中有一些数据。用逗号分隔。
例如:
1.4,2,3,4,5
2,3,4.2,5,6
24,5,2,33.4,62
如果您想要列的平均值,例如第一列(1.4、2 和 24),该怎么办?还是第二列(2,3 和 5)?
我认为将列放在一个数组中并使用内置的 mean 函数会起作用,但到目前为止,我只能提取行,而不是列
我想我会编辑这个,而不是创建另一个线程。我正在努力获取众所周知的 iris 数据集每一列的平均值。 我截取了一小部分数据:
5.1,3.5,1.4,0.2,Iris-setosa
4.9,3.0,1.4,0.2,Iris-setosa
4.7,3.2,1.3,0.2,Iris-setosa
4.6,3.1,1.5,0.2,Iris-setosa
5.0,3.6,1.4,0.2,Iris-setosa
5.4,3.9,1.7,0.4,Iris-setosa
4.6,3.4,1.4,0.3,Iris-setosa
delimiterln= ',';
data = importdata('iris.txt', delimiterln);
meanCol1 = mean(data(:,1))
meanCol2 = mean(data(:,2))
meanCol3 = mean(data(:,3))
meanCol4 = mean(data(:,4))
'cell' 类型的输入参数的未定义函数 'sum'。
均值误差(第 115 行) y = sum(x, dim, flag)/size(x,dim);
irisData 中的错误(第 6 行) meanCol1 = mean(data(:,1))
看起来处理数据类型有错误...对此有什么想法吗?我试着去掉最后一列,它是字符串。它似乎可以正常工作。所以我认为这是因为字符串。
【问题讨论】:
标签: matlab