获取可观察集合元素数据的平均值
本文关键字:数据 平均值 元素 集合 观察 获取 | 更新日期: 2023-09-27 18:11:14
我有一个包含60个元素的可观察集合,每个元素包含数字数据(双精度)。我想要得到60个元素的平均值((60个元素的总和)/60)。知道我该怎么做吗?
下面是我的代码:public class MainWindow : Window
{
DispatcherTimer timer = new DispatcherTimer();
double i = 0;
ObservableCollection<KeyValuePair<double, double>> Power = new ObservableCollection<KeyValuePair<double, double>>();
public MainWindow()
{
InitializeComponent();
timer.Interval = new TimeSpan(0, 0, 1); // per 5 seconds, you could change it
timer.Tick += new EventHandler(timer_Tick);
timer.IsEnabled = true;
}
Random random = new Random(DateTime.Now.Millisecond);
void timer_Tick(object sender, EventArgs e)
{
Power.Add(new KeyValuePair<double, double>(i, random.NextDouble() ));
i += 5;
}
}
您可以使用Average()
LINQ-to-Objects扩展方法:
var avg = Power.Average(x => x.Value);