【发布时间】:2012-06-22 22:16:17
【问题描述】:
我正在尝试在 C# 中计算密集矩阵中每一列的算术平均值,但我想知道是否可以做到?
【问题讨论】:
标签: c# visual-studio matrix mean
我正在尝试在 C# 中计算密集矩阵中每一列的算术平均值,但我想知道是否可以做到?
【问题讨论】:
标签: c# visual-studio matrix mean
元代码
mean(int[,] data, int j)
int sum = 0;
for i=0 to data.Length - 1
sum += data [i, j]
end
return sum / data.Length;
C#代码
class Program
{
static void Main(string[] args)
{
var data = new[,]
{
{ 1.1, 2.2 },
{ 3.3, 4.4 },
{ 5.5, 6.6 },
{ 7.7, 8.8 }
};
double meanValue = Mean(data, 0);
}
public static double Mean(double[,] data, int columnIndex)
{
double sum = 0.0;
int rowsCount = data.GetLength(0);
for (int i = 0; i < rowsCount - 1; i++)
{
sum += data[i, columnIndex];
}
return sum / rowsCount;
}
}
【讨论】:
sum 设为双精度/十进制,具体取决于所需的结果。
for 循环,您可以在其中遍历每一列并调用此处定义的方法。将所有结果添加到数组中并返回。