List<History> data = new List<History>()
{
new History() {Symbol="a", Close = 1.0m, Date = new DateTime(2016, 2, 1) },
new History() {Symbol="a", Close = 1.1m, Date = new DateTime(2016, 2, 2) },
new History() {Symbol="a", Close = 1.4m, Date = new DateTime(2016, 2, 3) },
new History() {Symbol="a", Close = 1.7m, Date = new DateTime(2016, 2, 4) },
new History() {Symbol="a", Close = 1.8m, Date = new DateTime(2016, 2, 5) },
new History() {Symbol="a", Close = 1.0m, Date = new DateTime(2016, 2, 7) },
new History() {Symbol="a", Close = 1.1m, Date = new DateTime(2016, 2, 8) },
new History() {Symbol="a", Close = 1.4m, Date = new DateTime(2016, 2, 9) },
new History() {Symbol="a", Close = 1.7m, Date = new DateTime(2016, 2, 10) },
new History() {Symbol="a", Close = 1.8m, Date = new DateTime(2016, 2, 11) },
new History() {Symbol="b", Close = 1.6m, Date = new DateTime(2016, 2, 1) },
new History() {Symbol="b", Close = 1.2m, Date = new DateTime(2016, 2, 2) },
new History() {Symbol="b", Close = 1.4m, Date = new DateTime(2016, 2, 3) },
new History() {Symbol="b", Close = 1.8m, Date = new DateTime(2016, 2, 4) },
new History() {Symbol="b", Close = 1.2m, Date = new DateTime(2016, 2, 5) },
new History() {Symbol="b", Close = 2.0m, Date = new DateTime(2016, 2, 7) },
new History() {Symbol="b", Close = 1.4m, Date = new DateTime(2016, 2, 8) },
new History() {Symbol="b", Close = 1.4m, Date = new DateTime(2016, 2, 9) },
new History() {Symbol="b", Close = 1.0m, Date = new DateTime(2016, 2, 10) },
new History() {Symbol="b", Close = 2.8m, Date = new DateTime(2016, 2, 11) },
new History() {Symbol="c", Close = 2.0m, Date = new DateTime(2016, 2, 1) },
new History() {Symbol="c", Close = 2.1m, Date = new DateTime(2016, 2, 2) },
new History() {Symbol="c", Close = 1.4m, Date = new DateTime(2016, 2, 3) },
new History() {Symbol="c", Close = 2.7m, Date = new DateTime(2016, 2, 4) },
new History() {Symbol="c", Close = 1.2m, Date = new DateTime(2016, 2, 5) },
new History() {Symbol="c", Close = 1.3m, Date = new DateTime(2016, 2, 7) },
new History() {Symbol="c", Close = 2.2m, Date = new DateTime(2016, 2, 8) },
new History() {Symbol="c", Close = 1.3m, Date = new DateTime(2016, 2, 9) },
new History() {Symbol="c", Close = 2.6m, Date = new DateTime(2016, 2, 10) },
new History() {Symbol="c", Close = 1.9m, Date = new DateTime(2016, 2, 11) },
};
var StockGroupList = data
.GroupBy(o => o.Symbol)
.OrderBy(o => o.Key)
.ToList();
이 2016, 2, 5
에서 Symbol="a"
의 오일 표준 편차 등 Vol
입니다 C#을 LINQ에서 이전 데이터에 대한 기능과 관련된 새 항목을 만들하는 방법 close
이 2016, 2, 1
~ 2016, 2, 5
이고 처음 4 일 Vol
(예 : 2016, 2, 1
~ 2016, 2, 4
)이 기본값 인 Vol = 0
입니다.내가 여기 <code>Vol</code></p> <pre><code>select new { Symbol, Close, Date, Vol}; </code></pre> <p>같은 새로운 목록을 생성 할
예상 출력 :
List<dynamic> NewData = new List<dynamic>
{
new History() {Symbol="a", Close = 1.0m, Date = new DateTime(2016, 2, 1), Vol = 0 },
new History() {Symbol="a", Close = 1.1m, Date = new DateTime(2016, 2, 2), Vol = 0 },
new History() {Symbol="a", Close = 1.4m, Date = new DateTime(2016, 2, 3), Vol = 0 },
new History() {Symbol="a", Close = 1.7m, Date = new DateTime(2016, 2, 4), Vol = 0 },
new History() {Symbol="a", Close = 1.8m, Date = new DateTime(2016, 2, 5), Vol = SD(XXX) },
new History() {Symbol="a", Close = 1.0m, Date = new DateTime(2016, 2, 7), Vol = SD(XXX) },
......
};
당신은 simplely 십일의 합을 말하고, 주어진 함수로
SD(xxx)
간주 할 수 있지만 실제로 여기
ten
을하기 때문에 하나 하나 inputing 방법을 사용하지 않는
대규모로 대체 될 수있다 큰 데이터의 번호. 또한, SD
경우
using MathNet.Numerics.Statistics;
decimal OneStdDev = (decimal)(new DescriptiveStatistics(data.Select(o => (double)o.Close)).StandardDeviation);
내가 무엇을 할 sould 형태
다음입니다 ?
여기서 날짜는 자연스러운 달력 일이 아니므로 '역사. 날짜 - 기록. 날짜 <시간 = 시간 pan.FromDays (dayspan)'이 정확하지 않을 수 있습니다. 죄송합니다. 저는 LINQ에서 신선한 상태입니다. – user6703592