我怎麼能計算其內容下面描述從給定列表的平均值爲:C#時間平均
06:56
06:58
06:55
06:54
06:54
06:53
06:55
06:53
06:58
06:54
06:58
06:55
06:54
06:50
06:54
06:57
任何想法?!?
我怎麼能計算其內容下面描述從給定列表的平均值爲:C#時間平均
06:56
06:58
06:55
06:54
06:54
06:53
06:55
06:53
06:58
06:54
06:58
06:55
06:54
06:50
06:54
06:57
任何想法?!?
將值轉換爲TimeSpan。您可以直接將輸出平均爲正確的數據類型。
附錄
從@gabba提供一個字符串列表及以上使用蜱的鏈接添加到答案,就可以計算出平均是這樣的:
TimeSpan average = new TimeSpan(Convert.ToInt64(times.Average(x => TimeSpan.Parse(x).Ticks)));
的結果值,當然也是一樣的:06:54:52.500
謝謝大家!我會嘗試你建議的東西。 – jep
var times = new List<string>
{
"06:56",
"06:58",
"06:55",
"06:54",
"06:54",
"06:53",
"06:55",
"06:53",
"06:58",
"06:54",
"06:58",
"06:55",
"06:54",
"06:50",
"06:54",
"06:57"
};
var average = times
.Select(TimeSpan.Parse)
.Average(x => x.TotalMilliseconds);
var averageTime = TimeSpan.FromMilliseconds(average);
這裏有一個變化:[查找時間段集合的平均值] http://stackoverflow.com/a/8847711/3527297其中的平均值(雖然不適用於此處的示例數據)可能會提供更高的亞秒精度值。 – Gustav
這個列表是如何聲明的?哪一種「類型」? – Sybren
在C#中有一行代碼,不要發貼,我們會盡力幫助你,如果有什麼東西不起作用... –
將它轉換爲小數(整小時,小數分鐘),然後平均那。 –