Tạo Bảng Kết Quả Bóng Đá

Tạo bảng kết quả thi đấu bóng đá. (Có thể tham khảo các cách theo dữ liệu khác Link)

  • Thống kê gồm: Tên đội bóng (Team), số trận thi đấu (Played), trận thắng (Won), trận hòa (Drawn), trận thua (Lost), bàn thắng (GF), bàn thua (GA), điểm (Points).
  • Điểm được tính: Thắng - 3, hòa - 1, thua - 0
  • Thứ tự xếp hạng ưu tiên: điểm số, bàn thắng, bàn thua.

Link: Onedrive

Xếp hạng kết quả bóng đá

Công thức:
1.=LET(p,B2:B51,q,C2:C51,r,TEXTSPLIT(p,"-"),s,TEXTAFTER(p,"-"),t,LEFT(q),u,RIGHT(q),REDUCE({"Team","Played","Won","Drawn","Lost","GF","GA","Points"},UNIQUE(r),LAMBDA(x,y,SORT(VSTACK(x,LET(a,SUM(N(HSTACK(r,s)=y)),b,SUM(((t>u)*(r=y))+((t<u)*(s=y))),c,SUM((t=u)*((r=y)+(s=y))),HSTACK(y,a,b,c,a-b-c,SUM(((r=y)*t)+((s=y)*u)),SUM(((r=y)*u)+((s=y)*t)),b*3+c))),3,-1))))

2.=LET(i,C2:C51,b,B2:B51,S,VSTACK,q,S(TEXTSPLIT(b,"-"),TEXTAFTER(b,"-")),c,--LEFT(i),n,--RIGHT(i),w,S(c,n),u,UNIQUE(q),SORT(REDUCE(E1:L1,u,LAMBDA(a,v,S(a,LET(j,--(v=q),x,SUM(j),e,SUM(j*((-S(c-n,n-c))<0)),r,SUM(j*((-S(c=n,c=n))<0)),HSTACK(v,x,e,r,x-e-r,SUM(j*w),SUM(j*(S(n,c))),e*3+r))))),8,-1))

3.=LET(C,CHOOSECOLS,V,TOCOL,k,"-",m,TEXTSPLIT(TEXTAFTER(k&B2:B51&k&C2:C51,k,{1,2,3,4}),k),s,1*V(C(m,3,4)),d,C(m,3)-C(m,4),p,V(IFS(d>0,{3,0},d<0,{0,3},1,{1,1})),VSTACK(E1:L1,GROUPBY(V(C(m,1,2)),HSTACK((s+1)^0,N(p=3),N(p=1),N(p=0),s,1*V(C(m,4,3)),p),SUM,,0,-8)))

4.=LET(x,VSTACK(B2:C51,REGEXREPLACE(B2:C51,"(\w+)(-)(\w+)","${1:+$3}$2${3:+$1}")),y,TEXTBEFORE(x,"-"),a,--DROP(y,,1), b,--TEXTAFTER(DROP(x,,1),"-"),w,N(a>b),d,N(a=b),VSTACK(E1:L1,GROUPBY(TAKE(y,,1),CHOOSE(SEQUENCE(,7),1,w,d,N(a<b),a,b,w*3+d),SUM,,0,-8)))

5.=LET(H,HSTACK,L,TOCOL,c,C2:C51,d,IMREAL(c&"i"),e,-IMAGINARY(c&"i"),g,L(IFS(d-e=0,1,(d-e)*{1,-1}>0,3,1,0)),m,TEXTSPLIT(CONCAT(B2:B51&"-"),,"-",1),VSTACK(E1:L1,GROUPBY(m,H(N(m=m),N(g=3),N(g=1),N(g=0),L(H(d,e)),L(H(e,d)),g),SUM,,0,-8)))

6.=LET(R,REDUCE(E1:L1,B2:B51,LAMBDA(x,y,VSTACK(x,LET(s,--TEXTSPLIT(OFFSET(y,,1),,"-"),L,INDEX(s,{2;1}),HSTACK(TEXTSPLIT(y,,"-"),{1;1},N(s>L),N(s=L),N(s<L),s,L,IFS(s>L,3,s=L,1,1,0)))))),GROUPBY(TAKE(R,,1),DROP(R,,1),SUM,3,0,-8))

7.Python (Xem trong file)

Đăng nhận xét (0)
Mới hơn Cũ hơn