pubg职业选手数据榜,蔚小理能再次绝地重生吗(上) (2024)

鐩綍 1.鍝佺墝鍩哄洜鐨勮嚧鍛界己闄?2.鍝佺墝鏂囧寲鐨勮嚧鍛界己闄?3.鑷虫殫鏃跺埢鐨勮嚜鎴戞晳璧?/p>

鎹箻鑱斾細鍏竷鐨?0鏈堜唤鍥藉唴鏂拌兘婧愯溅閿€閲忔暟鎹樉绀猴紝姣斾簹杩互20涓囩殑閿€閲忎竴楠戠粷灏樸€傞暱瀹夈€侀棶鐣屻€佸悏鍒╅攢閲忓悓姣斿骞呮渶澶э紝鍒嗗埆涓?08.4%銆?99.8%銆?10.2%銆傞櫎鐗规柉鎷夐攢閲忚穼鍑烘帓琛屾鍓?浣嶅眳绗?澶栵紝閿€閲忔帓琛屽墠15鍏ㄦ槸鍥戒骇鍝佺墝銆?鑰屼綔涓洪€犺溅鏂板娍鍔涚殑钄氬皬鐞嗭紝钄氭潵銆佺悊鎯抽攢閲忓悇1涓囧杈嗭紝鍒嗗埆鎺掑悕绗?0銆?1浣嶏紝鍓嶈€呭悓姣斿骞?74.3%锛屽悗鑰?1.4%锛岃窡涓嶄笂87%鐨勮涓氬閫熴€傚皬楣忎笉浠呭嚭鐜颁簡49.70%鐨勫悓姣斾笅婊戯紝閿€閲忎篃鍙湁5101杈嗭紝鐩告瘮9鏈堜唤8468杈嗙殑浜や粯杩戜箮鑵版柀锛?0鏈堜唤钄氬皬鐞嗕笁瀹堕攢閲忓悎璁″競鍦哄崰姣斾粎涓?.5%銆備粠浠婂勾1-10鏈堜唤鏁版嵁鏄剧ず锛岃敋灏忕悊閿€閲忔棭宸茶穼鍑哄墠10銆?閿€閲忚悗闈★紝鍙犲姞涓氱哗鎸佺画浜忔崯锛屾偛瑙傞鏈熷鑷磋祫鏈柉鐙傛姏鍞叾鑲$エ銆備粖骞?鏈堝簳浠ユ潵锛岃敋鏉ャ€佺悊鎯宠偂浠峰潎涓嬭穼瓒?5%锛屽皬楣忔洿鏄毚璺?7%銆傛洿鍔犱笉鐞嗘兂鐨勬槸锛屼粎2022骞翠笂鍗婂勾锛屼笁瀹朵簭鎹熷悎璁?6浜裤€?鐤儏閫氳儉鍙犲姞锛岄攢閲忚偂浠疯叞鏂╋紝浜忔崯鎸佺画鎵╁ぇ锛屼紶缁熻溅浼佸己鍔垮礇璧凤紝鐗规柉鎷変环鏍煎叚杩炴定鍚庨檷浠凤紝骞跺惎鍔?5涓囧厓杞﹀瀷鐨勭爺浜ц繘涓€姝ユ尋鍘嬬敓瀛樼┖闂达紝鍝悞銆侀棶鐣屻€侀浂璺戠瓑鍚庢潵鑰呭璧风洿杩姐€傝敋灏忕悊宸茬珯鍦ㄧ敓姝诲瓨浜$殑鎮礀杈癸紝鑰屼笖锛岃繖鍦烘儴鐑堢殑娣樻卑璧涗互浣曠鏂瑰紡浣曟椂缁撴潫銆傜洰鍓嶏紝浼间箮鐪嬩笉鍒板ご銆?鍝佺墝鍩哄洜鐨勮嚧鍛界己闄?2003骞达紝浠婃棩鐨勫浗鍐呭涓ゅぇ鏂拌兘婧愯溅宸ㄥご姣斾簹杩拰鐗规柉鎷夊悓骞存垚绔嬨€?008骞达紝姣斾簹杩帹鍑轰簡棣栨鏂拌兘婧愯溅F3DM锛岀壒鏂媺涔熶簬鍚屽勾鎺ㄥ嚭浜嗗鏃忚€佸ぇ鍝oadster銆備笉鐭ユ槸鑻遍泟鎵€瑙佺暐鍚岋紝杩樻槸鑷鎷呭綋璧蜂簡鏃朵唬璧嬩簣鐨勮矗浠讳娇鍛斤紝鎴栨姂鏄彈鍒扮壒鏂媺鍜屾瘮浜氳开鏍囨潌绀鸿寖鐨勫奖鍝嶃€傝敋灏忕悊2014銆?015鍏堝悗鎴愮珛锛屼笖閮介噰鍙栦簡鑱斿悎鍒涘浜虹殑妯″紡銆傛潕鏂屻€佹潕鎯炽€佷綍灏忛箯涓変綅绉诲姩浜掕仈缃戞椂浠e垱涓氭垚鍔熺殑寮勬疆鍎匡紝浠庤繖涓€鍒诲紑濮嬶紝鍙堝湪鏂拌兘婧愯禌閬撹繘琛岄暱鏈熺殑鐩哥埍鐩告潃銆?钄氭潵鐨勫搧鐗屾効鏅槸鈥滆嚧鍔涗簬閫氳繃鎻愪緵楂樻€ц兘鐨勬櫤鑳界數鍔ㄦ苯杞︿笌鏋佽嚧鐢ㄦ埛浣撻獙锛屼负鐢ㄦ埛鍒涢€犳剦鎮︾殑鐢熸椿鏂瑰紡鈥濓紝寮鸿皟鏋佽嚧鐨勭敤鎴蜂綋楠岋紝瀵规妧鏈爺鍙戝垱鏂扮獊鐮寸殑閲嶈鎬у己璋冧笉澶燂紝鍏锋湁鏄庢樉鐨勭Щ鍔ㄤ簰鑱旂綉鐗硅壊銆傝€屼笖鍓嶅悗涓ゅ彞涓や釜鈥滅敤鎴封€濋噸澶嶏紝鏁翠釜鎰挎櫙鏄惧緱姣旇緝鎷栨矒鍜屽啑闀匡紝闅句互璁板繂鍜屼紶鎾€?鐞嗘兂鐨勫搧鐗屾効鏅槸鈥滃垱閫犵Щ鍔ㄧ殑瀹跺涵绌洪棿鈥濓紝姹借溅鎬庝箞鑳藉拰瀹跺涵绌洪棿鑱旂郴璧锋潵锛屾槸绫讳技浜庡父骞村緟鍦ㄨ溅涓婄殑闀块€斿徃鏈猴紝澶╁ぉ鍦ㄥ婕傛硦娴佹氮锛屽眳鏃犲畾鎵€锛熷搴┖闂撮渶瑕佺殑鏄ǔ瀹氾紝鑰岀Щ鍔ㄤ笉浣嗗甫鏈夋槑鏄剧殑绉诲姩浜掕仈缃戞€濈淮鐗瑰緛锛屼篃涓嶈兘璁╀汉鎰熷彈鍒板搴殑娓╅Θ瀹夊畞銆傚搧鐗屾効鏅笉浣嗚浜烘棤鎵€閫備粠锛屼笉鐭ヤ綍璋擄紝鑰屼笖鍓嶅悗鐭涚浘銆?灏忛箯姹借溅鈥滄帰绱㈢鎶€锛屽紩棰嗘湭鏉ュ嚭琛屽彉闈┾€濓紝鎻愬埌浜嗙鎶€銆傚彲鈥滄帰绱⑩€濅簩瀛椾技涔庢病鏈夊噯澶囧ソ灏卞寙鍖嗕笂椹紝涓嶆垚鐔熺殑鎶€鏈垨鑰呬骇鍝佹槸瑕佹妸鐢ㄦ埛褰撳皬鐧介紶鍜岃瘯楠屽搧鍚楋紵涓嶄絾娌℃湁娑堥櫎寮ュ悎鏂版妧鏈柊浜у搧缁欑敤鎴峰甫鏉ョ殑蹇冪悊璺濈鍜岃竟鐣屾劅锛屽弽鑰岃鐢ㄦ埛鑾悕鎷呭咖鍜屾亹鎯с€?鐗规柉鎷夊潥瀹堚€滃姞閫熶笘鐣屽悜鍙寔缁兘婧愮殑杞彉鈥濈殑鍝佺墝鎰挎櫙锛屽媷浜庢壙鎷呰矗浠讳娇鍛斤紝涓鸿兘婧愭灟绔拰姹℃煋鎻愪緵瑙e喅鏂规锛屾爲绔嬪叏鐞冩爣鏉嗭紝杞彉鐨勫墠鎻愬拰鎵嬫鏄妧鏈垱鏂板拰绐佺牬銆傛瘮浜氳开鈥滅敤鎶€鏈垱鏂帮紝婊¤冻浜轰滑瀵圭編濂界敓娲荤殑鍚戝線鈥濈殑鍝佺墝鎰挎櫙锛岀洿鎺ョ偣鍚嶆妧鏈寔缁垱鏂帮紝鏈€缁堝洖褰掑埌缇庡ソ鐢熸椿鐨勫悜寰€鍜屾弧瓒炽€傜壒鏂媺鍜屾瘮浜氳开鏇寸鍚堢鎶€琛屼笟鍝佺墝鎰挎櫙鐨勮〃杩版柟寮忓拰瑙勮寖瑕佹眰銆?鏂拌兘婧愯涓氫綔涓烘妧鏈鍨掕緝楂樼殑琛屼笟锛屾妧鏈簳搴ф墠鏄紒涓氬媷绔嬫疆澶达紝鍩轰笟闀块潚鐨勬牴鏈€傛妧鏈垱鏂扮獊鐮存墠鑳芥墦纾ㄦ洿濂界殑浜у搧锛岃繘鑰岀粰鐢ㄦ埛鏇村ソ鐨勪綋楠岋紝骞跺舰鎴愭寔涔呯殑绔炰簤浼樺娍鍜屽搧鐗屾孩浠枫€傛瘮浜氳开鍜岀壒鏂媺鐖嗗彂鍓嶅骞寸殑鎶€鏈Н娣€鍜屽竷灞€锛屽挨鍏舵槸姣斾簹杩緷闈犳妧鏈嚜鐮斿舰鎴愮殑澹佸瀿鍜屾姢鍩庢渤锛屾墠鏄粖澶╅攢閲忎负鐜嬬殑鏍规湰銆?鍝佺墝鎰挎櫙浣滀负浼佷笟鍙戝睍鐨勭翰棰嗗拰鎴樼暐鏂瑰悜锛屽鏋滀竴鏃﹀亸绂昏涓氬睘鎬ц姹傦紝鍦ㄥ搧鐗岃繍钀ユ柟鏂归潰闈㈢Н绱寔缁殑鏃堕棿瓒婁箙锛屽甫鏉ョ殑浼ゅ瓒婂ぇ锛屽搧鐗屾姉鍑诲唴澶栭儴椋庨櫓鐨勮兘鍔涗篃灏辫秺寮憋紝涓€鏈夐鍚硅崏鍔紝绔嬪嵆琛€娴佹垚娌崇殑妗堜緥瀹炲湪澶氫笉鑳滄暟銆?浠庡搧鐗屽悕绉板垎鏋愶紝钄氭潵锛屾湭鏉ワ紝鏈夎拷姹傜編濂芥槑澶╁拰钄氳摑澶╃┖涔嬫剰锛屾瘮杈冩帴杩戞柊鑳芥簮杞﹀彂灞曠殑鏃朵唬瑕佹眰銆傝€屽皬楣忓拰鐞嗘兂鍒欑洿鎺ュ皢鍒涘浜虹殑鍚嶅瓧宓屽叆鍝佺墝鍚嶇О锛屾瘮鑲╀赴鐢般€佹湰鐢扮殑瀹忓ぇ鎰挎湜鐨勭‘鍙槈锛屽鏋滅粡杩囧骞寸殑鍝佺墝杩愯惀绉穩锛屾瘮鑲╄秴瓒婁赴鐢般€佹湰鐢扮殑鍙兘鎬т笉鏄笉瀛樺湪銆傚彲闈㈠鏂拌兘婧愯禌閬撶殑杩呯寷鍙戝睍鍜屾縺鐑堢珵浜夛紝甯傚満鍜屽鎵嬩笉浼氱粰鍏剁暀涓嬪厖瓒崇殑鍝佺墝绉穩鏃堕棿鍜屾満浼氥€傚啀娆★紝鍙湁鏃朵唬闇€瑕佺殑鏂拌兘婧愯涓氬拰鏂拌兘婧愪紒涓氬锛屼笉鏄紒涓氬鍒涢€犱簡鏂拌兘婧愭椂浠c€傚嵆渚胯繛椹柉鍏嬭繖绉嶅共鍟ュ暐琛岋紝鏍锋牱閮借锛屼笂澶╁叆鍦帮紝澶勫楂樿皟纰扮摲鐨勯《娴佸拰鍏ㄧ悆缃戠孩锛岄兘涓嶆暍鎶婁紒涓氱洿鎺ュ彨椹柉鍏嬶紝鑰屾槸鍙栧悕鐗规柉鎷夛紝浠ヨ〃杈惧绉戝鐨勬暚鐣忓拰绉戝瀹剁殑鑷存暚锛岃繖鏍风殑鍝佺墝鍚嶇О鍜屽瘬鎰忔墠鏇存湁璺ㄨ秺鏃朵唬鐨勫紶鍔涘拰褰卞搷鍔涖€?鍦ㄤ粖骞寸殑涓栫晫浜掕仈缃戝ぇ浼氫箤闀囧嘲浼氫笂锛岄樋閲屻€佷含涓滀袱瀹堕甯墽琛屽畼蹇电潃绋垮瓙琛ㄧず瑕佽瀺鍚堝拰鍔╁姏瀹炰綋缁忔祹锛屼笌浠ュ線椹簯渚冧緝鑰岃皥锛屽垬寮轰笢闅忓叴鑰屽彂鎱锋叏婵€鏄備笉鍚屻€傜綉涓婁竴涓瀛愶細椹簯涓嶈澶ц瘽浜嗭紝鍒樺己涓滀笉鍐嶅洖鎬间簡锛屼繛鏁忔椽涓嶈楦℃堡浜嗭紝闆峰啗涓嶈緭鍑烘瀛愪簡锛屽紶鏈濋槼璁茬墿鐞嗗幓浜嗭紝椹寲鑵俱€佹潕褰﹀畯銆佷竵纾婁笉鍙戝0浜嗭紝鐜嬪叴鐣欎笅涓€鍙ワ細鈥滆繖鎴栬鏄湭鏉?0骞存渶濂界殑涓€骞粹€濆氨娑堝け浜嗐€備竴涓椂浠o紝浜掕仈缃戝拰骞冲彴缁忔祹鏃犲簭鎵╁紶鐨勬椂浠g粨鏉熶簡锛岃繖涓瀛愬€煎緱鍥藉唴鎵€鏈変紒涓氬娣辨€濆叡鍕夈€?浠庢妧鏈鏉傚害鏉ョ湅锛岀洰鍓嶆柊鑳芥簮杞︽贩鍔ㄦ妧鏈妧鏈惈閲忔渶楂橈紝澧炵▼娆′箣锛岀函鐢垫妧鏈惈閲忔渶浣庛€備粠杩欎釜瑙掑害鍒嗘瀽锛岃敋灏忕悊鐨勫搧鐗屽鏃忓拰浜у搧鍝佺墝瑙勫垝涔熸槸姣旇緝鑷村懡鐨勩€?钄氭潵鐜版湁鐨凟S8銆丒S6銆丒C6銆丒S7銆丒T7銆丒T5鍏杞﹀瀷涓紝鍞环鏈€浣庣殑ET5涔熻32.8涓囪捣锛岄鑸増ES8鍒欓珮杈?9.8涓囧厓銆備环鏍煎畾浣嶄笌鐗规柉鎷夐珮搴﹂噸鍚堬紝鍕囨皵鐨勭‘鍙槈銆傚彲钄氭潵鐨勮溅鍨嬫槸鎶€鏈惈閲忔渶浣庣殑绾數鎶€鏈紝鑰屼笉鏄洰鍓嶆渶鍏堣繘鐨勬贩鍔ㄦ妧鏈€傜己涔忔妧鏈敮鎾戠殑楂樼瀹氫綅鍜岄珮浠锋牸濡備綍闀挎湡瀹炵幇鍝佺墝婧环锛屽苟璁╃敤鎴峰績鐢樻儏鎰块暱鏈熶负涔嬩拱鍗曪紵鐢ㄦ埛涓嶆槸绮変笣锛屼笉浼氫负浜嗘儏鎬€鐧界櫧鏀粯鍑犲崄涓囷紝鑰屾妧鏈惈閲忎笉楂樼殑鍝佺墝鍙堝浣曚繚闅滃嚭琛屽畨鍏紵 姝ゅ墠锛岃敋鏉T7灏遍绻佽鏇濆搧鎺ч棶棰橈紝鍖呮嫭鍚庢。鐜荤拑鎺ョ嚎瑁搁湶銆佸唴楗板澶勫紓鍝嶃€佸骇妞呮澗鍨捣鎷辩瓑闂銆傛洿鎯婁汉鐨勬槸锛屾湁杞︿富鍙嶆槧鍒氳喘涔颁笉涔呯殑钄氭潵ET7鍦ㄦ甯歌椹朵腑瓒寸獫锛屸€滄病鏈変换浣曞墠鍏嗭紝绐佺劧鏁磋溅鏂數锛屽埞杞﹀け鐏碉紝鍙兘渚濋潬鎯€х紦鎱㈠仠涓嬶紝鍏ㄩ儴鐢垫皵璁惧澶辩伒锛屽弻闂病娉曟墦寮€锛屾洿鍒彁鍦ㄥ悗澶囩鐨勪笁瑙掓灦銆傗€濊繖瀵瑰畾浣嶄簬涓ぇ鍨嬬數鍔ㄨ豹鍗庤溅ET7锛屽敭浠?5.80鈥?3.60涓囧厓锛屽姩涓嶅姩灏辫洞绐濓紝浣曟潵楂樼鍝佽川锛熸樉鐒朵笉鏄溅杈嗙殑浣庡帇钃勭數姹犲厖鐢垫ā鍧楀彂鐢熶簡澶辨晥鏁呴殰鐨勫叕鍏宠杈炶€岃兘鎺╃洊杩囧幓鐨勩€?钄氭潵鐨勭壒鑹叉槸鎹㈢數鏈嶅姟锛屾槸澶氫釜杞︿紒鏇剧粡灏濊瘯杩囩殑妯″紡锛屽彧鏄厖鐢垫々涓嶆櫘鍙婂拰鍏呯數鏃堕棿闀跨殑鏉冨疁涔嬭銆傚鏋滃厖鐢垫々鏅強鍜屽厖鐢垫椂闂撮暱鐨勯棶棰樿瑙e喅锛屾妸鑷繁鍥板湪缂轰箯鎶€鏈敮鎾戠殑鈥滈珮鎬ц兘鐨勭數鍔ㄨ溅鈥濋珮绔畾浣嶇殑钄氭潵锛屼綍鍘讳綍浠庣殑纭槸涓棶棰樸€傚洜涓烘瀬鑷寸殑鐢ㄦ埛杩愯惀鏈嶅姟鏈韩灏卞緢瀹规槗琚ā浠匡紝濡傛灉鏁翠釜鏂拌兘婧愬競鍦烘湇鍔¢兘鎻愬崌浜嗭紝钄氭潵鐨勭珵浜変紭鍔垮湪鍝噷锛?缁忚繃鍗佸骞寸殑鍙戝睍鍜屾櫘鍙婏紝鏂拌兘婧愯溅鏃╁凡鍛婂埆灏濋矞鍜岄珮棰濆埄娑︽椂浠o紝鏋佽嚧鐨勬€т环姣斻€佸洖褰掕涓氬钩鍧囧埄娑︿篃鏄搧鐗岃繍钀ラ渶瑕侀€氱洏鑰冭檻鐨勯棶棰樸€傛瘮璧锋瘮浜氳开姹夈€佺壒鏂媺Model 3锛岃吹浜嗕竴鍊嶇殑钄氭潵姣棤浼樺娍鍙█锛岄潰涓寸摱棰堟槸杩熸棭鐨勪簨銆傚悓鏃讹紝钄氭潵涓诲姏杞﹀瀷ES6姝i伃閬囨縺鐑堢珵浜夛紝鐞嗘兂ONE銆侀棶鐣孧7銆佺壒鏂媺Model Y銆佸皬楣廏9绛夊鎵嬶紝姝e湪铓曢钄氭潵鈥滈珮绔豹鍗庘€濈數鍔⊿UV鐨勫競鍦轰唤棰濄€?鎹繎鏈熻敋鏉ユ苯杞﹀叕鍛婃暟鎹樉绀猴紝10鏈堜氦浠橀噺涓?0,059杈嗭紝鍚屾瘮澧為暱174.3%銆?-10鏈堜唤绱浜や粯浜?2,493杈嗘苯杞︼紝鍚屾瘮澧為暱32.0%銆備氦浠?979杈嗛珮绔櫤鑳界數鍔⊿UV锛屽叾涓寘鎷?814杈咵S7銆?080杈嗛珮绔櫤鑳界數鍔ㄨ娇杞︼紝鍏朵腑鍖呮嫭3050杈咵T7鍙?030杈咵T5锛屾渶濂界殑鎴愮哗涔熸墠鏄氦浠橀噺浠呬粎杩囦簡3涓囪締鐨勭敓姝荤嚎銆傚敖绠¤敋鏉S8銆丒S6銆丒C6锛屽畾浣嶄笌椋庢牸宸紓鏇村ぇ锛屾嫇瀹界敤鎴蜂汉缇ょ殑鍔熻兘鏇村己銆傚彲缂轰箯鎶€鏈敮鎾戠殑楂樺畾浠凤紝浼氱己涔忔寔缁珵浜夊姏鐨勬€佸娍瓒婃潵瓒婃槑鏄俱€備互姝ゅ垎鏋愶紝鏃犺鏄瀹屾垚浠婂勾15涓囩殑浜や粯閲忥紝杩樻槸鏄庡勾绗洓瀛e害鐩堜簭骞宠 鐨勭洰鏍囷紝閮借鎵撲釜闂彿銆?鐞嗘兂鏈塐NE銆丩7 銆丩8銆丩9杞﹀瀷锛屽緱鐩婁簬鏄涓€涓帹鍑哄绋嬬殑鏂板娍鍔涜溅浼侊紝杞﹀瀷灏戯紝鐮斿彂鎴愭湰浣庯紝宸茬粡鎺ヨ繎鐩堝埄銆傝€屼笓娉ㄤ簬瀹跺涵鐢ㄨ溅甯傚満锛岃兘澶熸湁鏁堝湴鎵撳紑涓€涓粏鍒嗗競鍦猴紝甯姪鍏舵椿涓嬪幓浼间箮涓嶆垚闂銆傛浘缁忔槸30涓囦互涓婂敮涓€鐨勫绋嬭溅浼侊紝鍙绋嬫妧鏈繙姣斾笉涓婃贩鍔ㄧ殑鎶€鏈惈閲忛珮锛屽湪鐗规柉鎷夈€佹瘮浜氳开涓珮绔溅鍨嬮潰鍓嶏紝鐞嗘兂30涓囩殑浠锋牸鏀拺鐐瑰拰绔炰簤鍔涘湪鍝噷锛熶粠鍏ㄧ悆鑼冨洿鏉ョ湅锛屾棤璁烘槸浼犵粺鐕冩补杞﹀法澶达紝杩樻槸鏂板娍鍔涳紝閮介€氳繃搴炲ぇ鐨勪骇鍝佺嚎瑙勫垝鍜屽搧鐗屽鏃忔墿澶у競鍦轰唤棰濄€傝繖涔堝皯鐨勮溅鍨嬪浣曟敮鎾戠悊鎯冲湪閫犺溅椹媺鏉句腑缁х画璧颁笅鍘伙紝鑱氱劍鍋氭繁灏忎紬甯傚満濡備綍鎶靛尽鍚勮矾绔炰簤瀵规墜铏庡彛澶洪锛熷喌涓旓紝鐞嗘兂L8銆丩9鐩爣鍙椾紬缇や綋鐨勯噸鍙犲害杩滈珮浜庣珵浜夊鎵嬶紝鏈夌偣鍍忓弻鎵嬩簰鎼忓湪鑷垜鍐呭嵎銆?灏忛箯鐩墠鏈塆3 銆丟5銆丟9銆丳7銆丳5銆丳9绛夎溅鍨嬶紝灏忛箯瀹樼綉鏄剧ず锛屽皬楣忔柊杞9瀹氫綅鏅鸿兘SUV锛?0.99涓囧厓璧峰敭锛汸7瀹氫綅杞胯窇锛?3.99涓囧厓璧峰敭锛汸5瀹氫綅瀹剁敤杞胯溅锛?7.79涓囧厓璧峰敭锛汫3i瀹氫綅閮藉競SUV锛?6.89涓囧厓璧峰敭銆備笉浣嗕笌姣斾簹杩殑涓诲姏杞﹀瀷瀹嬨€佺Е銆佹眽绯诲垪15涓団€?0涓囧厓浠锋牸鍖洪棿閲嶅悎搴︽瘮杈冮珮锛岄珮涓綆鐨勫叏绾垮竷灞€锛屾樉寰楀畾浣嶄笉娓呫€傚搧鐗屽悕绉颁篃娌℃湁鏈夋晥鍖哄垎锛屾畠鍙婃睜楸肩殑鍚庢灉闅句互閬垮厤銆?灏忛箯涓€寮€濮嬫帹鍑篏3锛屼緷闈犵浉瀵逛綆鐨勪环鏍间紭鍔块潬璧伴噺鎵╁ぇ甯傚満浠介锛岄攢閲忚〃鐜版瘮杈冪悊鎯炽€傚敖绠″洜涓哄崌绾ч棶棰樺拰鑰佽溅涓诲彂鐢熶簡鎽╂摝锛屼絾鏈€缁堣繕鏄緱鍒颁簡濡ュ杽瑙e喅銆傜浜屾杞﹀瀷灏忛箯P7锛屾浘琚涓烘渶鏈夋満浼氭湀閿€閲忕牬涓囩殑杞﹀瀷锛屽湪琛ヨ创鏀跨瓥鐨勫姪鎺ㄤ笅锛屾湀閿€閲忎竴搴︽帴杩戜竾杈嗗ぇ鍏炽€傚彲鎯滀笂甯傛椂闂磋緝鏅氾紝涓斿競鍦虹珵浜夎秺鏉ヨ秺婵€鐑堬紝鍥戒骇鍝佺墝鎺ㄥ嚭浜嗗儚鏋佹蔼001銆佹瘮浜氳开娴疯惫銆佹鎷夐棯鐢电尗銆侀浂璺慍01绛夋湁绔炰簤鍔涚殑浜у搧锛屽洜姝7涓уけ浜嗗競鍦哄厛鏈猴紝闅句互绐佸洿鑰屽嚭銆傜涓夋杞﹀瀷灏忛箯P5锛岀敋鑷崇敤涓婁簡婵€鍏夐浄杈撅紝甯屾湜璁╂洿澶氱敤鎴疯兘閫氳繃杈冧綆鐨勪环鏍硷紝鏉ヤ綋楠屽皬楣忔櫤鑳藉寲鎶€鏈€傚彲鎯淧5閫犲瀷涓嶅鎯婅壋锛岃€屼笖瀹氫綅鐩稿灏忎紬锛屼互鏅鸿兘鍖栧鐢ㄦ埛浜х敓鍚稿紩鍔涚殑鐩爣涔熸湭杈炬垚銆?鏅鸿兘鍖栨槸澶ц秼鍔匡紝鍚勪釜鏂拌兘婧愯溅浼侀兘鍦ㄥ己璋冪鎶€鎰熷拰鏅鸿兘鍖栥€傛妸琛屼笟鍏辨€у綋鍋氬畾浣嶆爣绛撅紝鎺╃洊浜嗗搧鐗屼釜鎬у拰宸紓鍖栵紝寰堥毦褰㈡垚鍥哄畾蹇冩櫤鍜岃鐭ャ€傚喌涓旀妧鏈拰鏅鸿兘鍖栧彧鏄墜娈碉紝涓嶆槸鐩殑锛屽鏋滄妧鏈櫤鑳藉寲涓嶈兘缁欑敤鎴锋彁渚涙洿濂界殑鍑鸿瑙e喅鏂规鎴栦綋楠岋紝鍗曠函鐨勬櫤鑳藉寲鏍囩涓嶄絾闅句互褰㈡垚鏈夋晥鐨勫搧鐗岃鲸璇嗗害锛屾洿涓嶈兘浣滀负褰卞搷鐢ㄦ埛璐拱鍐崇瓥鐨勫厖瑕佹潯浠躲€?灏界灏忛箯鍦ㄨ嚜鍔ㄨ緟鍔╅┚椹跺拰鏅鸿兘搴ц埍鏂归潰鏈変竴瀹氱殑鎶€鏈Н绱拰浼樺娍锛屼絾涓庤涓氬法澶寸壒鏂媺銆佹瘮浜氳开銆佺櫨搴﹂樋娉㈢綏銆佸崕涓烘瘮杩樻槸鏈夊緢澶у樊璺濄€備互鑷繁鐨勭煭鏉跨洿闈㈢珵浜夊鎵嬬殑闀挎澘锛屼笉鑳借鏄釜鏄庢櫤鐨勫喅绛栥€傝櫧鐒跺皬楣忓拰鐗规柉鎷夋闈㈢‖鎶楃殑灞€闈紝瑕佹瘮钄氭潵鍜岀悊鎯抽兘瑕佹洿鐩存帴锛屼絾杩炵壒鏂媺閮藉湪寮鸿皟鍒堕€犲伐鑹恒€佹垚鏈帶鍒躲€佷緵搴旈摼鍜岄€犲瀷璁捐鐨勬椂鍊欙紝灏忛箯鍗曚竴鐨勬櫤鑳藉寲闀挎澘鐨勭‘鏃犳硶鏀拺鍏朵骇鍝佺殑缁煎悎绔炰簤鍔涖€?鍐典笖锛岃嚜鍔ㄩ┚椹舵妧鏈洰鍓嶄粛鐒舵病鏈夎窇杞︽湁缁濆棰嗗厛浼樺娍鐨勫鎵嬶紝鍚勫ぇ鍝佺墝浠嶇劧鍦ㄦ帰绱㈠畬鍠勪腑锛屾洿澶氳繕鏄湪灏侀棴鍦哄湴娴嬭瘯骞跺彇寰楁祴璇曠墝鐓ч樁娈点€傛寜鐓у崕涓轰换姝i潪鐨勫垎鏋愶紝鎶€鏈鍏堝崐姝ユ槸鏈€濂界殑鏃舵満锛屽鏋滈鍏堜笁姝ワ紝鍒欏繀鐒舵垚涓烘鍦ㄦ矙婊╀笂鐨勫墠娴€傚洜涓虹敤鎴峰熀浜庤緝浣庣殑淇′换搴︼紝瀵硅繃浜庤秴鍓嶇殑鎶€鏈拱鍗曚粯璐圭殑鎰忔効寰堜綆銆?浠婂勾浠ユ潵锛屽寘鎷竻鍗庡ぇ瀛﹀湪鍐呯殑浼楀鏈烘瀯閮藉湪鎺ㄥ姩鏅鸿兘缃戣仈姹借溅鐨勨€滀腑鍥芥柟妗堚€濓紝涓嶅皯鏁磋溅浼佷笟涔熼潪甯歌鍚屻€備富瑕佸師鍥犳槸鈥滀腑鍥芥柟妗堚€濆叿鏈夎緝寮虹殑鏈湴鍜岀ぞ浼氬睘鎬х壒寰侊紝蹇呴』瑕佹弧瓒冲拰閫傚簲鎴戝浗鐨勪氦閫氬熀纭€璁炬柦鍜屼俊鎭笌閫氫俊鍩虹璁炬柦浣跨敤鍜岀鐞嗚姹傦紝鍖呮嫭浜ら€氭硶瑙勩€佷俊鎭€氫俊鏍囧噯銆佷俊鎭畨鍏ㄤ笌鏁版嵁绠$悊銆佺浉鍏充骇鍝佹爣鍑嗙瓑銆傝繖瀵硅嚜鍔ㄩ┚椹跺叕鍙告櫘閬嶈拷姹傜殑鍏ㄦ爤鑷爺鎻愬嚭浜嗘洿楂樼殑鑳藉姏瑕佹眰锛屼笉浠呰鑳借嚜鐮旂畻娉曘€佽蒋浠跺拰鑷姩椹鹃┒鍩熸帶鍒跺櫒锛岃繕瑕佽兘澶熷疄鐜扳€滅銆佺銆佷簯鈥濈殑鍗忓悓锛岃繖涓矾寰勮櫧鐒舵竻鏅帮紝浣嗕緷鐒跺瓨鍦ㄦ妧鏈毦搴︺€侀噺浜у拰鎴愭湰闂銆?G3 銆丳7銆丳5涓夋鑰佽溅鍨嬪競鍦鸿〃鐜扮柌杞紝涓旀€ヤ簬鎾曟帀鎬т环姣旀爣绛撅紝鎻愬崌閿€閲忥紝灏忛箯杩涜浜嗗搧鐗屽崌绾с€傛帹鍑轰簡绗洓娆捐溅鍨婫9锛屽敭浠?0.99-46.99涓囦竾鍏冿紝浣曞皬楣忕О鈥淕9鏄?0涓囦互鍐呮渶濂界殑SUV鈥濄€備絾瀹氫綅5搴UV鐨勫皬楣廏9锛屼笂甯傝繃绋嬪苟涓嶉『鍒╋紝鍑虹幇浜嗙敤鎴峰悙妲戒骇鍝侀厤缃殑閫夋嫨闅惧害澶с€侀€夋嫨鎴愭湰楂樼瓑闂銆傜浉姣斾簬鐞嗘兂鍜岃敋鏉ラ珮绔畾浣嶏紝G9鐨勭洰鏍囨秷璐圭兢浣撲篃鐩稿妯$硦銆傝绉颁箣涓衡€滆姳50涓囦拱浜嗕釜涔炰笎鈥濈殑G9鐭湡鍐呮媺鍗囬攢閲忕殑璁炬兂涔熸垚浜嗘场褰憋紝涔熷拰涔嬪墠涓绘墦鎬т环姣旂殑鍝佺墝灞炴€х煕鐩惧啿绐侊紝鐨勭‘寰椾笉鍋垮け銆?涓綆绔拰楂樼瀹氫綅鐨勫弽鍙嶅澶嶏紝鍝佺墝鍗囩骇杩唬棰戦鍑洪棶棰樸€傛棦娌℃湁缁濆瓒呭墠鐨勬妧鏈敮鎾戯紝鍙堟棤娉曞閫犲嚭鍝佺墝宸紓鍖栵紝鍥犺€屽皬楣忛攢閲忔彁鍗囨€绘槸涓€娉笁鎶樸€備粠绱鏉ョ湅锛屾埅鑷?0鏈堝簳灏忛箯浜や粯閲忎粛鐒惰秴杩囪敋鏉ョ殑9.3涓囪締銆佺悊鎯崇殑9.7涓囪締銆傝櫧鐒跺皬楣忓叏骞存暣浣撲氦浠橀噺瓒呰繃浜?0涓囧彴銆備絾涓嬪崐骞存€ュ墽涓嬫粦鐨勮秼鍔胯繕鍦ㄧ户缁紝杩欐墠鏄皬楣忕洰鍓嶆€ラ渶瑙e喅鐨勯棶棰樸€?钄氬皬鐞嗕笁瀹跺搧鐗屽鏃忓叏閮ㄩ兘鏄互瀛楁瘝鎴栬嫳鏂囧紑澶村懡鍚嶏紝涓庢瘮浜氳开鍞愬畫鍏冩槑娓呫€佺壒鏂媺鐨凪odel绯诲垪鐩告瘮锛岀己灏戠畝娲佹槑蹇紝寰堥毦鐪嬪埌涓€涓濇枃鍖栫Н娣€鍜屾枃鍖栬嚜淇°€傚嵆浣胯寰佹湇鍏ㄧ悆甯傚満锛岃秺鏄腑鍥界殑锛屾墠瓒婃槸涓栫晫鐨勩€?鐒惰€岋紝浠や汉涓嶈В鐨勬槸锛岄潰瀵逛骇鍝佽川閲忓嵄鏈恒€佹暟鎹潪娉曢噰闆嗐€侀珮绠″ぉ浠峰勾钖€佸埞杞﹀け鐏靛畨鍏ㄤ簨浠躲€佷镜鏉冭缃氥€佹瘉绾﹀簲灞婄敓銆丼EC棰勬憳鐗屼簨浠躲€佸伐鍘傚仠浜х瓑涓€绯诲垪绀句細鍗辨満鍜屽叕鍏冲嵄鏈虹殑閬伄鎺╂帺銆傝敋灏忕悊涓変綅鎺岃埖浜鸿涔堝繖鐫€鍏紑瀵规爣鍜屾€肩壒鏂媺锛岃涔堝叕寮€瀵硅祵锛岃涔堝拻濯掍綋銆侀獋鍚岃绛夈€傚尓澶锋墍鎬濈殑绉嶇涓惧姩锛屾槸鍒绘剰妯′豢椹柉鍏嬪彛鏃犻伄鎷︼紝楂樿皟鍏紑韫祦閲忥紝杩樻槸闅忔€ц€屽彂锛屼护浜鸿垂瑙c€?/p>

鍐欏湪鍓嶉潰鐨勮瘽

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽聽

澶ч儴鍒嗙殑鑻遍泟鑱旂洘鐜╁搴旇閮界煡閬撹嫳闆勮仈鐩熷叏鐞冩€诲喅璧涚殑閲嶈鎬э紝杩欐槸鐢盧iot Games缁勭粐鐨勪笘鐣岃寖鍥村唴鐨勮嫳闆勮仈鐩熶勘涔愰儴涔嬮棿鐨勬瘮璧涖€傝椤硅禌浜嬭嚜2011骞村垱鍔炵涓€灞婂悗姣忓勾閮戒細鍦ㄥ崄鏈堜负鍏ㄧ悆鐨勮嫳闆勮仈鐩熺帺瀹跺甫鏉ヤ笘鐣屾渶寮虹殑淇变箰閮ㄤ箣闂寸殑瀵规姉銆傝嚜璇ラ」璧涗簨鍒涘姙浠ユ潵锛屽叕璁ゅ疄鍔涙渶寮虹殑涔熸槸璁ㄨ鐑害鏈€楂樼殑涓や釜璧涘尯鍒嗗埆鏄細闊╁浗璧涘尯浠ュ強涓浗澶ч檰璧涘尯銆傚湪宸蹭妇鍔炵殑涔濆眾鍏ㄧ悆鎬诲喅璧涗腑锛岄煩鍥借禌鍖烘嬁鍒拌繃5娆℃€诲啝鍐涳紝鍏朵腑SKT鐨勪腑鍗曢€夋墜Faker鏇存槸鎴愪负姣忓勾鍏虫敞鐨勭劍鐐广€備絾鏄?018骞碨8涓栫晫璧涗笂涓浗澶ч檰璧涘尯IG闃熶紞鎴愬姛鐧婚《涓嶄粎鍦嗕簡浼楀鍥藉唴鑻遍泟鑱旂洘鐜╁鐨勬ⅵ锛屼篃璁╀腑鍥藉ぇ闄嗚禌鍖洪噸鏂板洖褰掓渶寮鸿禌鍖轰箣鍒楋紝鑰?019骞寸殑S9涓栫晫璧涗腑鍥藉ぇ闄嗚禌鍖虹殑FPX闃熶紞鍐嶄竴娆℃嬁鍒颁笘鐣屾€诲啝鍐涙墠姝e紡璁╅煩鍥借禌鍖洪€€涓嬬鍧涖€傜粡杩囦竴浠e張涓€浠h嫳闆勮仈鐩熻亴涓氶€夋墜鐨勫姫鍔涚粓浜庤涓浗澶ч檰璧涘尯寰楀埌浜嗕笘鐣岃寖鍥寸殑璁ゅ彲锛屼篃寰椾互璁╄嫳闆勮仈鐩熻繖娆炬父鎴忓湪PUBG鐨勫啿鍑讳笅鍦ㄤ腑鍥藉競鍦鸿兘缁х画缁存寔鐢熷懡鍔涖€?/p>

鑳屾櫙浠嬬粛

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽聽

璇ユ暟鎹泦鍖呭惈浜?019骞磋嫳闆勮仈鐩熷叏鐞冩€诲喅璧涜嚜鍏ュ洿璧涘紑濮嬫墍鏈夐槦浼嶇殑鏁版嵁锛屽寘鎷琤an/pick锛宬da锛屾父鎴忔椂闀跨瓑鎬诲叡91涓瓧娈点€傝繖91椤规父鎴忔暟鎹冻浠ヤ粠鏁翠綋鍜岀粏鑺備笂瀹屾暣鐨勬弿杩颁竴鍦烘父鎴忥紝鎴戜滑浼氬埄鐢ㄨ繖浜涙暟鎹垎鏋愬悇闃熶紞鐨勭壒鐐广€傚洜涓烘垬闃熶箣闂寸殑姣旇禌鍜屽钩鏃舵父鎴忛噷鐨勬帓浣嶆瘮璧涙湁寰堝ぇ涓嶅悓锛屾墍浠ョ孩钃濇柟锛宐an/pick锛屽悇鍒嗚矾缁忔祹鎯呭喌涔熸垚涓轰簡闇€瑕佽繘琛屽垎鏋愮殑鐐广€?/p>

涓嬮潰鏄鏁版嵁闆嗕腑鍖呭惈鐨勫瓧娈典互鍙婂鍚勫瓧娈电殑瑙i噴锛?/p>

date锛氭瘮璧涜繘琛岀殑鏃ユ湡

side锛氱孩鏂规垨钃濇柟

position锛氶€夋墜鐨勪綅缃紙Top锛孧iddle锛孞ungle锛孉DC锛孲upport锛?/p>

player锛氶€夋墜鐨処D

team锛氶槦浼嶅悕绉?/p>

champion锛氶€夋墜閫夋嫨鐨勮嫳闆?/p>

ban1锛宐an2锛宐an3锛宐an4锛宐an5锛氫粠绗竴鍒扮浜旀绂侀€夌殑鑻遍泟

gamelength锛氭父鎴忔椂闀?/p>

result锛氭父鎴忕粨鏋?/p>

k锛宒锛宎锛氬嚮鏉€锛屾浜★紝鍔╂敾

teamkills锛宼eamdeaths锛氶槦浼嶆€诲嚮鏉€锛岄槦浼嶆€绘浜?/p>

doubles锛宼riples锛宷uadras锛宲entas锛氬弻鏉€锛屼笁鏉€锛屽洓鏉€锛屼簲鏉€

.......(涓棿鍖呭惈鐨勪紬澶氭父鎴忓厓绱犱俊鎭洜绡囧箙杩囬暱鍦ㄨ繖閲屼笉鍋氳В閲婏紝鍒嗘瀽鐢ㄥ埌鏃朵細鍙﹀仛瑙i噴锛?/p>

鏁版嵁棰勫鐞?/p>

棣栧厛鐓т緥杩涜鏁版嵁棰勫鐞嗐€?/p>

#瀵煎叆闇€瑕佺敤鍒扮殑鍖?/p>

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

#瀵煎叆鏁版嵁

wc_data=pd.read_csv('wc_players.csv')

#鐪嬬湅鏁版嵁鐨勬€婚噺

wc_data.shape

璇ユ暟鎹泦鏈?190鏉℃暟鎹紝91涓瓧娈点€?/p>

鎺ヤ笅鏉ョ湅鐪嬫暟鎹被鍨嬩互鍙婃湁娌℃湁缂哄け鏁版嵁銆?/p>

#鍏堟潵鐪嬩竴涓嬫暟鎹被鍨?/p>

wc_data.dtypes.value_counts()

#鐪嬩竴涓嬫湁娌℃湁缂哄け鏁版嵁

wc_data.isnull().sum().value_counts()

缁撴灉鏄剧ず鏈変袱涓瓧娈垫湁40涓己澶卞€硷紝涓€涓瓧娈垫湁1190涓己澶卞€硷紝涓€涓瓧娈垫湁5涓己澶卞€笺€傚湪纭畾缂哄け鍊肩殑澶勭悊鏂瑰紡涔嬪墠瑕佸厛鐪嬬湅杩欎簺鍊奸兘鏄粈涔堢被鍨嬶紝鏈変粈涔堝惈涔夈€?/p>

#鍒嗗埆鎵惧嚭鏈夌己澶卞€肩殑瀛楁

null_40=wc_data.columns[wc_data.isnull().sum()==40]

null_1190=wc_data.columns[wc_data.isnull().sum()==1190]

null_5=wc_data.columns[wc_data.isnull().sum()==5]

print('Columns with 40 null values:',null_40)

print('Columns with 1190 null values:',null_1190)

print('Columns with 5 null values:',null_5)

寰楀埌浜嗘湁缂哄€肩殑瀛楁鐨勪俊鎭紝鎴戜滑灏卞彲浠ラ€愪竴鍒嗘瀽濡備綍瀵圭己澶卞€艰繘琛屽鐞嗐€傚浜庢湁40涓己澶卞€肩殑'fbaron' 鍜?'fbarontime'锛岃繖涓や釜瀛楁鍒嗗埆琛ㄧず闃熶紞鏄惁鍑绘潃绗竴鏉$敺鐖典互鍙婂嚮鏉€绗竴鏉$敺鐖电殑鏃堕棿锛屽浜庤繖涓ゅ垪缂哄け鍊兼垜浠洿鎺ョ敤'0'濉厖锛堟敞鎰忚繖閲岃浣跨敤瀛楃涓诧紝鍥犱负杩欎袱鍒楃殑绫诲瀷涓衡€檕bject'銆傚啀鏉ョ湅鏈?190鏉$己澶卞€肩殑瀛楁锛?heraldtime' 琛ㄧず鍑绘潃宄¤胺鍏堥攱鐨勬椂闂达紝鍥犱负璇ュ垪鐨勭己澶卞€艰繃澶氫笖鏃犳硶浣跨敤骞冲潎鏁帮紝浼楁暟绛夊~鍏呮墍浠ョ洿鎺ユ妸杩欎竴鍒楀垹闄ゃ€傛渶鍚庡浜庢湁5涓己澶卞€肩殑'ban5'瀛楁锛屾垜浠彲浠ラ€夋嫨鐢ㄧ浜旀绂侀€夋渶澶氱殑鑻遍泟濉厖缂哄け鍊笺€?/p>

#涓?0涓己澶卞€肩殑瀛楁濉厖0

wc_data['fbaron'].fillna('0',inplace=True)

wc_data['fbarontime'].fillna('0',inplace=True)

#鐩存帴鍒犻櫎1190涓己澶卞€肩殑瀛楁

wc_data.drop(columns=['heraldtime'],inplace=True)

#涓?涓己澶卞€肩殑瀛楁濉厖璇ュ瓧娈典笅鍑虹幇娆℃暟鏈€澶氱殑鑻遍泟

wc_data['ban5'].fillna(wc_data['ban5'].value_counts().index[0],inplace=True)

#妫€鏌ユ暟鎹泦涓幇鍦ㄦ槸鍚﹁繕鏈夌己澶卞€?/p>

wc_data.isnull().sum().value_counts()

缁撴灉鏄剧ず鎴戜滑鐨勭己澶卞鐞嗚繃绋嬪凡缁忓畬鎴愩€?/p>

2019鍏ㄧ悆鎬诲喅璧涘寘鍚簡涓ら儴鍒嗭細鍏ュ洿璧涘拰姝h禌锛岃€岃繖涓ら儴鍒嗘棤璁烘槸闃熶紞瀹炲姏杩樻槸瀵规姉婵€鐑堢▼搴﹂兘鏈夊緢澶у尯鍒紝鎵€浠ユ垜浠鎶婅繖涓ら儴鍒嗗垎寮€鍒嗘瀽銆?/p>

#鎶婃暟鎹垎鎴愬叆鍥磋禌閮ㄥ垎鍜屾璧涢儴鍒?/p>

#鍙栧嚭鍏ュ洿璧涚粨鏉熸棩鏈熸渶鍚庝竴鍦烘瘮璧涙渶鍚庝竴涓€夋墜瀵瑰簲鐨刬ndex

index=wc_data[wc_data['date']=='2019/10/8'].index[-1]

#鍒嗗壊鍑哄叆鍥磋禌閮ㄥ垎

wc_pis=wc_data.iloc[:index+1,:]

#鍒嗗壊鍑烘璧涢儴鍒?/p>

wc_mg=wc_data.iloc[index+1:,:]

鍒拌繖涓€姝ヤ负姝紝鎴戜滑鐨勬暟鎹澶勭悊灏卞畬鎴愪簡銆?/p>

鎺㈢储鎬ф暟鎹垎鏋愬拰鍙鍖?/p>

鎴戜滑鍏堝鍏ュ洿璧涜繘琛屽垎鏋愩€?/p>

#鍏堢湅鐪嬪叆鍥磋禌鏈夊灏戦槦浼嶅弬鍔?/p>

wc_pis['team'].unique()

鍐嶆潵鐪嬬湅鍏ュ洿璧涗腑鍚勪綅缃嚭鍦烘鏁版渶澶氱殑鑻遍泟銆?/p>

#鍏ュ洿璧涗腑鍚勪綅缃娇鐢ㄦ渶澶氱殑涓変釜鑻遍泟鍙婂嚭鍦烘鏁?/p>

wc_pis_top=wc_pis[wc_pis['position']=='Top']['champion'].value_counts()[:3]

wc_pis_jungle=wc_pis[wc_pis['position']=='Jungle']['champion'].value_counts()[:3]

wc_pis_middle=wc_pis[wc_pis['position']=='Middle']['champion'].value_counts()[:3]

wc_pis_adc=wc_pis[wc_pis['position']=='ADC']['champion'].value_counts()[:3]

wc_pis_support=wc_pis[wc_pis['position']=='Support']['champion'].value_counts()[:3]

#鍙鍖?/p>

plt.figure(figsize=(20,5))

axe1=plt.subplot(1,5,1)

axe1.bar(np.arange(3),height=wc_pis_top,tick_label=wc_pis_top.index)

axe1.set_title('Top')

axe2=plt.subplot(1,5,2)

axe2.bar(np.arange(3),height=wc_pis_jungle,tick_label=wc_pis_jungle.index)

axe2.set_title('Jungle')

axe3=plt.subplot(1,5,3)

axe3.bar(np.arange(3),height=wc_pis_middle,tick_label=wc_pis_middle.index)

axe3.set_title('Middle')

axe4=plt.subplot(1,5,4)

axe4.bar(np.arange(3),height=wc_pis_adc,tick_label=wc_pis_adc.index)

axe4.set_title('ADC')

axe5=plt.subplot(1,5,5)

axe5.bar(np.arange(3),height=wc_pis_support,tick_label=wc_pis_support.index)

axe5.set_title('Support')

瀵逛簬ADC鍜岃緟鍔╀袱涓綅缃紝閫夋嫨浼间箮闈炲父鍥哄畾锛孉DC浣嶇疆闇炲拰鍗¤帋骞冲垎绉嬭壊锛岃緟鍔╀綅缃敜鐭冲拰娲涘悇鏈夊崈绉嬨€傚叾浠栦笁涓綅缃笂锛屾墦閲庝綅浼间箮鐩插儳浼氭垚涓洪槦浼嶉閫夛紝浣嗕笂鍗曞拰涓崟浣嶅鑻遍泟鐨勯€夋嫨鍋忓悜浼间箮骞朵笉鏄庢樉銆傚綋鐒跺悇涓綅缃閫夋嫨鏈€澶氱殑鑻遍泟涓€瀹氭槸褰撴椂鐗堟湰寮哄娍鎴栬兘鍙嶅埗鐗堟湰寮哄娍鑻遍泟鐨勮嫳闆勶紝鍦ㄦ垬闃熸瘮璧涗腑鑻遍泟閫夋嫨鐨勮嚜鐢卞害骞舵病鏈夋帓浣嶆父鎴忛珮锛屽湪鍚庨潰鐨勫垎鏋愭垜浠簲璇ヤ篃浼氱湅鍒拌繖浜涜嫳闆勫啀娆″嚭鐜板湪姝h禌鍚勪綅缃閫夋嫨鏈€澶氱殑鑻遍泟姒滃崟涓娿€備粠杩欎釜缁撴灉鏉ョ湅锛屽叏鐞冩€诲喅璧涘叆鍥磋禌涓悇浣嶇疆鍑虹幇鏈€澶氱殑鑻遍泟鍒嗗埆鏄細

#鐪嬬湅鍚勪釜闃熻儨鐜囨槸澶氬皯

win_rate_dict={}

for team in list(wc_pis['team'].unique()):

counts=wc_pis[wc_pis['team']==team]['result'].value_counts().sort_index()

win_rate=round(counts[counts.index[1]]/(counts[counts.index[0]]+counts[counts.index[1]]),2)

win_rate_dict[team]=win_rate

#鍙鍖?/p>

win_rates=[x for x in win_rate_dict.values()]

team=[x for x in win_rate_dict.keys()]

plt.figure(figsize=(20,5))

plt.bar(np.arange(12),height=win_rates,tick_label=team)

浠庣粨鏋滄垜浠彲浠ョ湅鍒拌儨鐜囪緝楂樼殑涓ゆ敮闃熶紞鍒嗗埆鏄細Clutch Gaming 鍜?Damwon Gaming锛岃繖涓ゆ敮闃熶紞涔熸槸鍒嗗埆鏉ヨ嚜瀹炲姏杈冨己鐨勫寳缇庤禌鍖哄拰闊╁浗璧涘尯銆傝儨鐜囧墠鍥涚殑鍥涙敮闃熶紞鍒嗗埆鏄細Clutch Gaming锛孌amwon Gaming锛孒ong Kong Attitude 鍜?Splyce锛岃繖鍥涙敮闃熶紞涔熸槸鍦ㄥ叆鍥磋禌鏉€鍏ユ璧涚殑鍥涙敮闃熶紞銆備粠杩欎釜缁撴灉鏉ョ湅锛屽叆鍥磋禌涓悇鏀槦浼嶈繕鏄瓨鍦ㄧ潃杈冨ぇ鐨勫疄鍔涘樊璺濓紝澶栧崱璧涘尯鐨勬垬闃熻儨鐜囩殕涓嶈冻鐧惧垎涔嬩簲鍗侊紝鑰屽疄鍔涜緝寮虹殑璧涘尯闃熶紞鑳滅巼鍙互杈惧埌鍙€曠殑鐧惧垎涔嬪叓鍗併€?/p>

鍥犱负鏁版嵁闆嗕腑娌℃湁姣忓満姣旇禌鐨凪VP閫夋墜鐨勬暟鎹紝鎴戜滑灏辩敤kda鏉ヤ唬鏇縈VP鏉ヨ瘎浼伴€夋墜鐨勮〃鐜般€傛垜浠幇鍦ㄦ潵鐪嬬湅鍦ㄥ叆鍥磋禌涓〃鐜版渶濂界殑浜斾綅閫夋墜鍒嗗埆鏄皝锛屼互鍙婁粬浠殑KDA鍒嗗埆涓哄灏戙€傛敞鎰忥紝鐢变簬鑻遍泟鑱旂洘瀹樻柟鍦ㄦ瘮璧涗腑浣跨敤鐨凨DA璁$畻鏂规硶涓猴細锛圞+A锛?D锛屼笉鍚屼簬鍦ㄦ父鎴忎腑璁$畻KDA鐨勬柟娉曪紝鍥犳鍦ㄨ繖閲屾垜浠绠桲DA鏃朵篃浣跨敤瀹樻柟鐨勮绠楁柟娉曘€?/p>

#鍏ュ洿璧涗腑琛ㄧ幇鏈€濂界殑閫夋墜锛堝钩鍧噆da鏈€楂橈級

KDA=[]

for k,d,a in zip(wc_pis['k'],wc_pis['d'],wc_pis['a']):

if d == 0:

kda=round((k+a)/(d+1),2)

else:

kda=round((k+a)/d,2)

KDA.append(kda)

wc_pis['KDA']=KDA

#鍗曠嫭鎶婇€夋墜鍜孠DA鎻愬彇鍑烘潵

wc_pis_player_kda=wc_pis.loc[:,['player','KDA']]

#璁$畻姣忎綅閫夋墜鐨勫钩鍧嘖DA

wc_pis_player_kda=round(wc_pis_player_kda.groupby('player').mean(),2)

wc_pis_player_kda.sort_values(by='KDA',ascending=False,inplace=True)

#鍏ュ洿璧涗腑KDA鍓嶄簲鐨勯€夋墜

wc_pis_player_kda[:5]

杩欎簲浣嶉€夋墜鍒嗗埆鏄細CG鐨凙DC锛欳ody Sun锛孲plyce鐨凙DC锛欿obbe锛孋G鐨勬墦閲庯細Lira锛孌WG鐨勬墦閲嶤anyon锛屼互鍙奃WG鐨勪腑鍗昐howmaker銆傚湪鍏ュ洿璧涗腑鍚稿紩浜嗕紬澶氱溂鐞冪殑CG涓婂崟HUNI鍗存病鍑虹幇鍦ㄨ繖浠芥鍗曚腑锛堝懠瀛愬摜瀵逛笉璧佛煓?馃檭 馃檭 锛夈€?/p>

鍏ュ洿璧涘彧鏄儹韬紝涓嬮潰璁╂垜杩涘叆鍒板姝h禌鐨勫垎鏋愩€?/p>

鎴戜滑鍏堟潵鐪嬬湅鍙傚姞姝h禌鐨勯兘鏈夊摢浜涢槦浼嶃€?/p>

#鍏堢湅鐪嬫璧涙湁澶氬皯闃熶紞鍙傚姞

wc_mg['team'].unique()

鍐嶆潵鐪嬬湅鍦ㄦ璧涗腑鍚勪綅缃娇鐢ㄦ渶澶氱殑鑻遍泟鍒嗗埆鏄摢浜涖€?/p>

#姝h禌涓悇浣嶇疆浣跨敤鏈€澶氱殑涓変釜鑻遍泟鍙婂嚭鍦烘鏁?/p>

wc_mg_top=wc_mg[wc_mg['position']=='Top']['champion'].value_counts()[:3]

wc_mg_jungle=wc_mg[wc_mg['position']=='Jungle']['champion'].value_counts()[:3]

wc_mg_middle=wc_mg[wc_mg['position']=='Middle']['champion'].value_counts()[:3]

wc_mg_adc=wc_mg[wc_mg['position']=='ADC']['champion'].value_counts()[:3]

wc_mg_support=wc_mg[wc_mg['position']=='Support']['champion'].value_counts()[:3]

#鍙鍖?/p>

plt.figure(figsize=(20,5))

axe1=plt.subplot(1,5,1)

axe1.bar(np.arange(3),height=wc_mg_top,tick_label=wc_mg_top.index)

axe1.set_title('Top')

axe2=plt.subplot(1,5,2)

axe2.bar(np.arange(3),height=wc_mg_jungle,tick_label=wc_mg_jungle.index)

axe2.set_title('Jungle')

axe3=plt.subplot(1,5,3)

axe3.bar(np.arange(3),height=wc_mg_middle,tick_label=wc_mg_middle.index)

axe3.set_title('Middle')

axe4=plt.subplot(1,5,4)

axe4.bar(np.arange(3),height=wc_mg_adc,tick_label=wc_mg_adc.index)

axe4.set_title('ADC')

axe5=plt.subplot(1,5,5)

axe5.bar(np.arange(3),height=wc_mg_support,tick_label=wc_mg_support.index)

axe5.set_title('Support')

鎴戜滑鏉ユ妸杩欎釜缁撴灉鍜屽叆鍥磋禌鐨勭粨鏋滄瘮杈冧竴涓嬶細棣栧厛鐪嬫暣浣擄紝鍚勪綅缃鑻遍泟鐨勯€夋嫨娆℃暟鍜屽叆鍥磋禌鐩告瘮宸窛宸茬粡鎷夊紑锛屼粠缁撴灉鏉ョ湅姣忎釜浣嶇疆閮芥湁涓€涓閫夎嫳闆勪笖涓庣浜岄『浣嶈嫳闆勮閫夋嫨娆℃暟鐩稿樊杈冨銆傚啀浠庡悇鍒嗚矾鍒嗘瀽锛屼笂鍗曡閫夋嫨娆℃暟鏈€澶氱殑鑻遍泟渚濈劧鏄埞闀匡紝鍦ㄥ叆鍥磋禌涓粨鏋滀腑鍑虹幇鐨勯硠楸间篃鍑虹幇鍦ㄤ簡鍓嶄笁鐨勪綅缃紱鎵撻噹浣嶇疆鐩插儳闆锋墦涓嶅姩渚濇棫鎺掑悕绗竴锛岃€岀浜屽悕浠庨浄鍏嬪鍙樻垚浜嗛厭妗讹紱涓崟浣嶇疆绗竴浠庨樋鍗′附鍙樻垚浜嗙憺鍏癸紱鑰屽湪ADC浣嶇疆涓婂崱鑾庡拰闇炴媺寮€浜嗗樊璺濓紝鍗¤帋琚€夋鏁拌揪鍒颁簡50娆′箣澶氾紝閫犳垚杩欎釜缁撴灉鐨勫師鍥犱篃鍙兘鏄洜涓哄湪ban/pick鏃堕湠娲涚粍鍚堝叾涓€琚玝an鎴栬閫夊鑷撮湠鐨勪紭鍏堢骇鏈夋墍涓嬮檷锛涘湪杈呭姪浣嶆繁娴锋嘲鍧︿竴璺冩垚涓虹涓€锛岃€屾礇鍜岄敜鐭冲彉涓虹浜屽拰绗笁锛屽綋鐒堕儴鍒嗗師鍥犱篃鍜屽墠闈㈡彁鍒扮殑闇炴礇缁勫悎鏈夊叧銆備粠杩欎釜缁撴灉鏉ョ湅锛屽湪姝h禌涓紝鍚勪綅缃嚭鐜版渶澶氱殑鑻遍泟鍒嗗埆涓猴細

鐪嬪畬浜嗚閫夋嫨鏈€澶氱殑鑻遍泟锛屾垜浠竴鏍疯鐪嬬湅琚玝an鏈€澶氱殑鑻遍泟銆?/p>

#鍐嶆潵瑙傚療涓€涓嬫璧涗腑鍚勮疆娆¤ban娆℃暟鏈€澶氱殑鑻遍泟鍒嗗埆鏄皝

ban_champ_dict={}

ban_round=['ban1','ban2','ban3','ban4','ban5']

for each in ban_round:

counts=wc_mg[each].value_counts()[:3]

ban_champ_dict[each]=counts

#鍙鍖?/p>

plt.figure(figsize=(20,5))

axe1=plt.subplot(1,5,1)

axe1.bar(np.arange(3),height=ban_champ_dict['ban1']/5,tick_label=ban_champ_dict['ban1'].index)

axe1.set_title('Ban1')

axe2=plt.subplot(1,5,2)

axe2.bar(np.arange(3),height=ban_champ_dict['ban2']/5,tick_label=ban_champ_dict['ban2'].index)

axe2.set_title('Ban2')

axe3=plt.subplot(1,5,3)

axe3.bar(np.arange(3),height=ban_champ_dict['ban3']/5,tick_label=ban_champ_dict['ban3'].index)

axe3.set_title('Ban3')

axe4=plt.subplot(1,5,4)

axe4.bar(np.arange(3),height=ban_champ_dict['ban4']/5,tick_label=ban_champ_dict['ban4'].index)

axe4.set_title('Ban4')

axe5=plt.subplot(1,5,5)

axe5.bar(np.arange(3),height=ban_champ_dict['ban5']/5,tick_label=ban_champ_dict['ban5'].index)

axe5.set_title('Ban5')

棣栧厛鏉ョ湅绗竴ban锛屾綐妫ban娆℃暟杈惧埌浜嗘儕浜虹殑鎺ヨ繎70娆★紝璇佹槑娼樻.鍦ㄥ綋鏃剁殑鐗堟湰宸茬粡杈惧埌浜嗛潪ban蹇呴€夌殑绋嬪害锛岃鏄庤嫳闆勮仈鐩熺殑璁捐甯堜滑鍦ㄥ娼樻.鐨勫钩琛℃€ц璁′笂杩樺緱澶氫笅鐐瑰姛澶€傜浜宐an濂囦簹濞滀綅灞呮棣栵紝鍏舵鏄樋鍗′附鍜岃緵寰锋媺銆傝€屼粠绗笁ban涔嬪悗鍚勮嫳闆勮ban鐨勬鏁板氨鐩稿鍧囪 浜嗚澶氾紝娉ㄦ剰闃垮崱涓藉悓鏃跺嚭鐜板湪浜嗙涓€锛岀浜屽拰绗笁ban鐨勫墠涓夊悕涔嬪垪锛岃瘉鏄庡湪褰撴椂鐨勭増鏈樋鍗′附涔熺畻鏄竴涓瘮杈冨己鍔跨殑鑻遍泟銆?/p>

涓嬮潰鎴戜滑寮€濮嬭浆绉诲埌鍒版父鎴忚繘琛屼腑浜х敓鐨勬暟鎹€?/p>

鍏堟潵鐪嬬湅閲庢€暟鎹笂鑳界粰鎴戜滑浠€涔堝惎鍙戝惂銆?/p>

#鍦哄潎閲庢€嚮鏉€鏈€楂樼殑鍓嶄簲鍚嶉€夋墜

#鍏堟妸閫夋墜鍜屽嚮鏉€閲庢€暟鍗曠嫭鎻愬彇鎴愪负涓€涓狣ataFrame

monster_killed_df=wc_mg.loc[:,['player','monsterkills']]

#璁$畻姣忎綅閫夋墜骞冲潎鍑绘潃閲庢€暟

monster_killed_df=monster_killed_df.groupby(['player']).mean()

#瀵瑰钩鍧囧嚮鏉€閲庢€暟鎺掑簭

monster_killed_df.sort_values(by='monsterkills',ascending=False,inplace=True)

#鎻愬彇鍑哄墠浜斿悕閫夋墜鍜屽搴斿钩鍧囧嚮鏉€閲庢€暟

top_5_players=monster_killed_df.index[:5]

top_5_monster_killed=monster_killed_df['monsterkills'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_monster_killed,tick_label=top_5_players)

鍦哄潎鍑绘潃閲庢€暟鍓嶄簲鍚嶉€夋墜鐩稿樊涓嶅锛岀涓€鍚嶆槸Griffin鐨凾arzan閫夋墜锛岀浜屽悕鏄疓AM鐨凩evi锛堣秺鍗楁墦閲庡睘瀹炴湁鐐逛笢瑗筐煠?馃 馃 锛夛紝绗笁鍚嶆槸鏇胯ˉ涓婂満鐨処G鎵撻噹Leyan锛屽洓浜斿悕鍒嗗埆鏄疉HQ鐨凙lex鍜孌WG鐨凜anyon銆?/p>

鎴戜滑閮界煡閬撲綔涓烘墦閲庯紝涓嶅厜瑕佹敞閲嶅湪鑷閲庡尯鐨勫埛閲庢晥鐜囷紝鏄笉鏄篃寰楀幓瀵规柟閲庡尯鍋风偣涓滆タ浠ユ鏉ョ粰瀵规柟鎵撻噹鏂藉姞鍘嬪姏馃槑 馃槑 馃槑 锛岄偅涔堟垜浠氨鏉ョ湅鐪嬪湪鏁屾柟閲庡尯鍋蜂笢瑗挎渶澶氱殑鍓嶄簲鍚嶉€夋墜鏄皝銆?/p>

#鍦哄潎瀵规柟閲庡尯閲庢€嚮鏉€鏈€楂樼殑鍓嶄簲鍚嶉€夋墜

monster_killed_df=wc_mg.loc[:,['player','monsterkillsenemyjungle']]

monster_killed_df=monster_killed_df.groupby(['player']).mean()

monster_killed_df.sort_values(by='monsterkillsenemyjungle',ascending=False,inplace=True)

top_5_players=monster_killed_df.index[:5]

top_5_monster_killed=monster_killed_df['monsterkillsenemyjungle'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_monster_killed,tick_label=top_5_players)

杩欎釜缁撴灉灏遍潪甯哥伒鎬т簡锛屽厖鍒嗗睍绀轰簡浜氭床鎵撻噹鐨勭壒鐐癸紝涓婃鐨勫墠浜斿悕鍏ㄩ儴鏄簹娲叉墦閲庯紝浠庨珮鍒颁綆渚濇鏄細FPX鐨凾ian锛孏AM鐨凩evi锛孲KT鐨凜lid锛孖G鐨凩eyan浠ュ強DWG鐨凜anyon銆傝繖鍏呭垎璇存槑浜嗕簹娲叉墦閲庡浜庨噹鍖虹殑渚电暐鎰忓浘鏄潪甯搁珮鐨勶紝鑰屾娲插拰鍖楃編鍦板尯鐨勬墦閲庡湪杩欎竴鐐逛笂浼间箮骞舵病鏈夊紩璧疯冻澶熺殑閲嶈銆?/p>

涓嬮潰鎴戜滑鍐嶆潵鐪嬬湅鍦哄潎琛ュ垁鏁板墠浜旂殑閫夋墜鍒嗗埆鏄皝銆?/p>

#鍦哄潎琛ュ垁鏈€楂樼殑鍓嶄簲鍚嶉€夋墜

minion_killed_df=wc_mg.loc[:,['player','minionkills']]

minion_killed_df=minion_killed_df.groupby(['player']).mean()

minion_killed_df.sort_values(by='minionkills',ascending=False,inplace=True)

top_5_player=minion_killed_df.index[:5]

top_5_minion_killed=minion_killed_df['minionkills'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_minion_killed,tick_label=top_5_player)

姣笉鎰忓锛屼笂姒滅殑浜斾綅鍏ㄩ儴涓哄悇闃烝DC閫夋墜锛屾垜浠兘鐭ラ亾ADC鍦ㄥ墠鏈熺浉瀵瑰急鍔匡紝闇€瑕佸拰骞宠ˉ鍒€鏉ヤ负鍚庢湡鐨勬寔缁€т激瀹宠緭鍑哄仛濂介摵鍨€傚悓鏃跺湪鍚庢湡ADC涔熻捣鍒版竻鐞?鎺ㄨ繘鍚勮矾鍏电嚎鐨勪富瑕佷綔鐢ㄣ€傝櫧鐒跺悇浣嶉€夋墜鐨勫満鍧囪ˉ鍒€鏁扮浉宸笉澶э紝浣嗕綔涓虹涓€鍚嶇殑RNG闃烝DC Uzi杩樻槸鍜屽悗鍑犱綅鎷夊紑浜嗕竴鐐瑰樊璺濄€傚嵆浣夸竴鐩存湁浜哄Uzi鍚冧笁璺叺绾胯川鐤戯紝浣嗕笉寰椾笉璇碪zi鍦ㄥ悗鏈熺殑杈撳嚭鑳藉姏纭疄涓嶅灏忚銆?/p>

闄や簡琛ュ垁锛岃閲庡湪娓告垙涓紝鐗瑰埆鏄禌鍦轰笂鐨勪綔鐢ㄥ悓鏍烽噸瑕併€傚湪璧涘満涓婂悇鎴橀槦閰嶅悎鏃犵紳琛旀帴鐨勬儏鍐典笅锛岃閲庣◢寰湁鐐圭枏婕忓氨鍙兘浼氬鑷翠竴涓槦鍙嬭鍑绘潃鐢氳嚦璁╁鏂规粴璧烽洩鐞冦€傞偅涔堟垜浠氨鏉ョ湅鐪嬶紝鍦哄潎瀹夋彃瑙嗛噹鏁版渶澶氱殑鍓嶄簲浣嶆槸璋併€?/p>

#鍦哄潎鎻掔溂鏁版渶楂樺墠浜斿悕

wards_df=wc_mg.loc[:,['player','wards']]

wards_df=wards_df.groupby(['player']).mean()

wards_df.sort_values(by='wards',ascending=False,inplace=True)

top_5_player=wards_df.index[:5]

top_5_wards_placed=wards_df['wards'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_wards_placed,tick_label=top_5_player)

姝f墍璋撲粈涔堜汉骞蹭粈涔堟椿锛屾彃鐪兼暟鍓嶄簲浣嶄篃姣笉渚嬪鐨勮杈呭姪閫夋墜鍖呮徑銆?/p>

鍓嶅嚑椤瑰垎鏋愪腑鍚勭粨鏋滃墠浜斾綅閫夋墜涔嬮棿閮芥病鏈夊嚭鐜版槑鏄剧殑宸窛锛岃繖璇佹槑涓栫晫璧涘満涓婂己闃熶箣闂寸殑姣旀嫾骞朵笉鏄摢涓槑鏄熼€夋墜鐨勫疄鍔涳紝鑰屾槸鍥㈤槦涔嬮棿鐨勯厤鍚堝拰涓村満搴斿彉鑳藉姏锛岃€岃繖涔熸槸鐢电珵鏈€绮惧僵鐨勫湴鏂广€?/p>

涓嬮潰灏卞埌浜嗘瘡鍦烘父鎴忕粨鏉熷繀浼氬嚭鐜扮殑閫犳垚浼ゅ/鎵垮彈浼ゅ缁熻鏁版嵁鐜妭銆?/p>

鎴戜滑鍏堟潵鐪嬬湅姝h禌涓満鍧囦激瀹虫渶楂樼殑鍓嶄簲鍚嶉€夋墜閮芥槸璋併€?/p>

#鍦哄潎浼ゅ鏈€楂樺墠浜斿悕

damage_df=wc_mg.loc[:,['player','dmgtochamps']]

damage_df=damage_df.groupby(['player']).mean()

damage_df.sort_values(by='dmgtochamps',ascending=False,inplace=True)

top_5_player=damage_df.index[:5]

top_5_damage_to_champion=damage_df['dmgtochamps'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_damage_to_champion,tick_label=top_5_player)

杩欎釜缁撴灉寰堟湁瓒o紝鎴戜滑鏉ヤ粩缁嗗垎鏋愪竴涓嬨€傜涓€鍚嶆槸C9鐨凙DC閫夋墜Sneaky锛岃€岃繖浣嶉€夋墜鍗存病鏈夊嚭鐜板湪琛ュ垁鏁板墠浜旂殑闃熷垪涓紝杩欏氨鏄紶璇翠腑鐨勨€滃悆鐨勬槸鑽夛紝鎸ょ殑鏄ザ鈥濆瀷ADC锛岃€屼笖璇ラ€夋墜鐢氳嚦姣旂浜屽悕鍦哄潎楂樺嚭浜嗙害4000鐐逛激瀹冲€笺€傜浜屽悕鏄疌G鐨勪笂鍗曢€夋墜Huni锛堝懠瀛愬摜缁堜簬鏉ヤ簡锛夛紝鍦ㄥ悗闈㈢殑鍒嗘瀽涓ぇ瀹朵細鐪嬪埌CG涓€鍦洪兘娌¤耽杩囷紝浣咹uni鐨勫満鍧囦激瀹冲嵈楂樺眳鎵€鏈夐€夋墜鐨勭浜岋紙鍛煎瓙鍝ヨ〃绀洪槦鍙嬭彍閫煎甫涓嶅姩馃檮 馃檮 馃檮 锛夈€傜涓夊悕灏辨槸鎴戜滑鐨勨€滀紬绁炰箣绁炩€漇hy鍝ワ紙瀵逛笉璧锋垜鏄疭hy鍚桂煓?馃檭 馃檭 锛夛紝铏界劧鍦哄潎浼ゅ浠呮浜嶩uni锛屼絾涓や綅閫夋墜涓嶇鏄浜庡洟鎴樼殑璐$尞杩樻槸瀵圭嚎鎶€宸т笂瀛板己瀛板急搴旇涓嶇敤鎴戝璇翠簡銆傜鍥涘悕灏辨槸鍜岀涓€鍚嶅垰濂界浉鍙嶇被鍨嬬殑ADC閫夋墜RNG鐨刄zi锛岃櫧鐒惰ˉ鍒€鏁颁綅鍒楃涓€锛屽満鍧囦激瀹充篃楂樺眳鍓嶄簲锛屼絾鍜孲neaky杩欑瓒呯骇缁忔祹瀹炴儬鍨婣DC杩樻湁涓€瀹氬樊璺濄€傜浜斿悕鏄潵鑷狫 Team鐨勪腑鍗曢€夋墜FoFo锛岃€屼粬涔熸槸杩欎唤姒滃崟涓敮涓€鐨勪腑鍗曢€夋墜銆?/p>

鎴戜滑鍐嶆潵鐪嬬湅鍦ㄦ壙鍙椾激瀹虫柟闈㈠墠浜旂殑閫夋墜閮芥湁鍝簺銆?/p>

#鍦哄潎鎵垮彈浼ゅ鏈€楂樺墠浜斿悕

damage_share_df=wc_mg.loc[:,['player','dmgshare']]

damage_share_df=damage_share_df.groupby(['player']).mean()

damage_share_df.sort_values(by='dmgshare',ascending=False,inplace=True)

top_5_player=damage_share_df.index[:5]

top_5_damage_share=damage_share_df['dmgshare'][:5]

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

plt.bar(np.arange(5),height=top_5_damage_share,tick_label=top_5_player)

RNG鐨凙DC閫夋墜Uzi鎰忓鍦板嚭鐜板湪浜嗚繖浠芥鍗曠殑绗竴浣嶏紝鍦ㄤ笘鐣岃禌鍦轰笂浣滀负涓€涓狝DC鍘婚€佺殑鎯呭喌涓嶅お鍙兘鍑虹幇锛岄偅灏卞彧鑳借鏄洜涓篣zi鍦ㄥ悗鏈熻秴寮虹殑carry鐨勮兘鍔涗娇寰椾粬鎴愪负浜嗗鎵嬮泦鐏殑棣栬鐩爣銆傝€屼激瀹冲€肩浜岄珮鐨凥uni鍦ㄦ壙鍙椾激瀹虫鍗曚腑涔熸帓鍦ㄤ簡绗簩锛堝彲鎴戝嵃璞′腑鍛煎瓙鍝ュソ鍍忎笉鎬庝箞鐜╁潶鍏嬸煒?馃槒 馃槒 锛夈€?/p>

鎺ヤ笅鏉ユ垜浠啀鏉ョ湅鐪嬪湪涓栫晫璧涘満涓婏紝绾㈣摑鏂圭殑閫夋嫨鍒板簳瀵规父鎴忕殑鑳滆礋鏈夋病鏈夊奖鍝嶃€?/p>

#鍦ㄦ璧涗腑绾㈣摑鏂圭殑鑳滅巼鍒嗗埆鏄灏?/p>

side_df=wc_mg.loc[:,['side','result']]

win_count=side_df[side_df['side']=='Red']['result'].value_counts().sort_index()

win_rate=round(win_count[win_count.index[1]]/(win_count[win_count.index[1]]+win_count[win_count.index[0]]),2)

#瀵圭粨鏋滆繘琛屽彲瑙嗗寲

plt.figure(figsize=(6,6))

sizes=[1-win_rate,win_rate]

labels=('Blue Team','Red Team')

plt.pie(sizes,labels=labels,autopct='%1.0f%%')

铏界劧鏈変紬澶氱殑鏂囩珷鎴栬€呰В璇撮兘浼氬垎鏋愮孩钃濇柟鐨勯€夋嫨瀵规父鎴忕粨鏋滅殑褰卞搷锛屼絾浠庣粨鏋滀笂鏉ョ湅铏界劧绾㈡柟鑳滅巼姣旇摑鏂圭◢楂橈紝浣嗘槸涔熶笉瓒充互杈惧埌浣垮弻鏂归槦浼嶆媺寮€宸窛鐨勫湴姝ャ€?/p>

涓嬮潰鎴戜滑鍐嶄粠鍚勬敮闃熶紞鐨勮搴︽潵鐪嬩竴涓嬪湪鍏ㄧ悆鎬诲喅璧涗腑鍚勬敮闃熶紞鐨勮儨鐜囧垎鍒槸澶氬皯銆?/p>

#鐪嬬湅鍚勪釜闃熻儨鐜囨槸澶氬皯

win_rate_dict={}

for team in list(wc_mg['team'].unique()):

counts=wc_mg[wc_mg['team']==team]['result'].value_counts().sort_index()

if len(counts) == 2:

win_rate=round(counts[counts.index[1]]/(counts[counts.index[0]]+counts[counts.index[1]]),2)

else:

if counts.index == 0:

win_rate=0

else:

win_rate=1

win_rate_dict[team]=win_rate

#涓哄悇闃熻儨鐜囧垱寤轰竴涓狣ataFrame骞舵寜鐓ц儨鐜囬檷搴忔帓搴?/p>

win_rates=[x for x in win_rate_dict.values()]

team=[x for x in win_rate_dict.keys()]

win_rate_df=pd.DataFrame()

win_rate_df['team']=team

win_rate_df['win_rate']=win_rates

win_rate_df.sort_values(by='win_rate',ascending=False,inplace=True)

#瀵硅儨鐜囨寜鐓ч珮浣庢帓搴忓彲瑙嗗寲

win_rates=list(win_rate_df['win_rate'])

team=list(win_rate_df['team'])

plt.figure(figsize=(30,5))

plt.bar(np.arange(len(team)),height=win_rates)

plt.xticks(np.arange(len(team)),team,rotation=-45,ha='left')

plt.rc('font',size=18)

浣滀负S9鐨勫啝鍐涳紝FPX鐨勮儨鐜囬珮杈捐繎80%锛岃€屼袱鏀煩鍥介槦浼峉KT鍜孏riffin绱ч殢鍏跺悗锛屽喅璧涗腑FPX鐨勫鎵婫2浠呬綅浜庣鍥涖€傛渶鍚庝笁鏀槦浼岰G锛孉HQ鍜孒KA鏇存槸涓€鍦鸿儨鍒╅兘娌℃湁寰楀埌銆?/p>

鏈€鍚庯紝璁╂垜浠潵鐪嬬湅鍦ㄦ璧涗腑琛ㄧ幇鏈€濂界殑鍓嶅崄浣嶉€夋墜锛堝悓鏍蜂娇鐢↘DA鏈€涓哄垽鏂爣鍑嗭級銆?/p>

#姝h禌涓〃鐜版渶濂界殑閫夋墜锛堝钩鍧噆da鏈€楂橈級

KDA=[]

for k,d,a in zip(wc_mg['k'],wc_mg['d'],wc_mg['a']):

if d == 0:

kda=round((k+a)/(d+1),2)

else:

kda=round((k+a)/d,2)

KDA.append(kda)

wc_mg['KDA']=KDA

#鍗曠嫭鎶婇€夋墜鍜孠DA鎻愬彇鍑烘潵

wc_mg_player_kda=wc_mg.loc[:,['player','KDA']]

#璁$畻姣忎綅閫夋墜鐨勫钩鍧嘖DA

wc_mg_player_kda=round(wc_mg_player_kda.groupby('player').mean(),2)

wc_mg_player_kda.sort_values(by='KDA',ascending=False,inplace=True)

#姝h禌涓璌DA鍓嶅崄鐨勯€夋墜

wc_mg_player_kda[:10]

鍦↘DA鎺掑悕鍓嶅崄鐨勯€夋墜涓湁浜斾綅鏉ヨ嚜鎴戜滑鐨凩PL璧涘尯锛岃繖涔熷啀涓€娆¤瘉鏄庝簡鎴戜滑LPL璧涘尯鐨勫疄鍔涖€?/p>

鏁版嵁寤烘ā

鍦ㄨ繖涓€閮ㄥ垎瑕佸仛鐨勫伐浣滄槸浣跨敤绾挎€у垽鍒垎鏋愶紙Linear Discriminant Analysis锛夋潵甯垜浠鏁版嵁杩涜鍒嗙被銆傚熀鏈€濇兂鏄細姣忔敮闃熶紞閮芥湁浜斾釜浣嶇疆锛岃繖鏍峰氨鍙互鎶婃暟鎹垎涓轰簲绫伙紝鑰屾暟鎹泦涓殑鐗瑰緛杈冨浣跨敤鍐崇瓥鏍戞晥鏋滀笉浣筹紝鍚屾椂娉ㄦ剰鍒拌繖鏄竴涓湁鐩戠潱绫荤殑闂锛岄偅涔堟垜浠氨鍙互浣跨敤绾挎€у垽鍒垎鏋愭潵甯垜浠В鍐宠繖绫婚棶棰樸€傜嚎鎬у垽鍒垎鏋愭槸涓€绉嶆妸楂樼淮绌洪棿鐨勬暟鎹姇褰卞埌浣庣淮绌洪棿浠庤€屾洿濂藉湴杩涜鍖哄垎鐨勬柟娉曪紝绠€鍗曠殑鏉ヨ绾挎€у垽鍒垎鏋愯鍋氱殑灏辨槸浣库€滄姇褰卞悗绫诲唴鏂瑰樊鏈€灏忥紝绫婚棿鏂瑰樊鏈€澶р€濈殑浼樺寲鏂规銆?/p>

鍦ㄤ娇鐢ㄧ嚎鎬у垽鍒垎鏋愪箣鍓嶆湁涓€涓瑙e喅鐨勯棶棰橈細鎴戜滑鎵€浣跨敤鐨勬ā鍨嬪苟涓嶈璇嗗瓧绗︿覆绫诲瀷鐨勬暟鎹紝涔熷氨鏄鏈哄櫒骞朵笉鏄庣櫧鏂囧瓧鐨勬剰涔夛紝鎵€浠ユ垜浠鍏堝府瀹冪炕璇戞垚瀹冨彲浠ョ悊瑙g殑鏁板瓧銆傝繖閲屽氨瑕佷娇鐢ㄥ埌鐗瑰緛宸ョ▼涓緢閲嶈鐨勭殑鏂规硶锛氱紪鐮併€傚父鐢ㄧ殑缂栫爜鏂规硶涓猴細瀹氬簭缂栫爜锛屽垎绠辩紪鐮佸拰鐙儹缂栫爜銆傚叿浣撻棶棰樺叿浣撳垎鏋愶紝鍏堟潵鐪嬬湅鎴戜滑瀛楃涓茬被鍨嬬殑鏁版嵁閮芥湁鍝簺鍚э細

#鎵惧嚭鍘熸暟鎹泦涓殑object绫诲瀷瀛楁

object_columns=wc_data.columns[wc_data.dtypes=='object']

#鐪嬬湅object绫诲瀷瀛楁鏈夊摢浜?/p>

object_columns

閫氳繃瀛楅潰鎰忔€濆ぇ瀹跺簲璇ヨ兘鐚滃埌姣忎釜瀛楁鍒嗗埆浠h〃浠€涔堬紝鍦ㄨ繖褰撲腑闈炲父璁╀汉鐤戞儜鐨勬槸鈥榝baron鈥欙紝鈥榝barontime鈥欙紝鈥榲isiblewardclearrate鈥欙紝鈥榠nvisiblewardclearrate鈥欒繖鍑犻」鐪嬩技搴旇鏄暣鏁板瀷鎴栨诞鐐瑰瀷鐨勬暟鎹珶鐒舵槸瀛楃涓茬被鍨嬨€備簬鏄垜灏卞幓鍘熸暟鎹泦涓瀵熶簡涓€涓嬶紝鈥榝baron鈥欏拰鈥榝barontime鈥欑殑鏁版嵁纭疄鍏ㄩ儴鏄暟瀛楃被鍨嬶紝鑰屸€榲isiblewardclearrate鈥欏拰invisiblewardclearrate鈥樹袱涓瓧娈典笅鐨勬暟鎹叏閮ㄤ负绌猴紝浣嗚繖涓や釜瀛楁鍦ㄤ箣鍓嶅鐞嗙己澶卞€兼椂鍗存樉绀烘病鏈夌己澶卞€兼垜鎯冲彲鑳芥槸鍥犱负鍘熸暟鎹泦涓繖涓や釜瀛楁涓嬪~鍏呮槸涓€涓€?鈥欙紝涔熷氨鏄┖鏍硷紝鎵€浠ヨ褰撴垚浜嗗瓧绗︿覆绫诲瀷涓旀病鏈夌己澶卞€笺€傛悶娓呮浜嗚繖涓棶棰樺悗鎴戜滑灏卞彲浠ョ潃鎵嬭В鍐充簡銆?/p>

#鎶奻baron鍜宖barontime涓や釜瀛楁杞崲鎴愭诞鐐瑰瀷

wc_data['fbaron']=wc_data['fbaron'].astype(float)

wc_data['fbarontime']=wc_data['fbarontime'].astype(float)

#鎶奷ate锛寁isiblewardclearrate锛宨nvisiblewardclearrate瀛楁鍒犲幓

wc_data.drop(['date','visiblewardclearrate','invisiblewardclearrate'],axis=1,inplace=True)

涔嬫墍浠ユ妸date杩欎竴鍒椾篃鍒犲幓锛屼富瑕佹槸鑰冭檻鍒拌繖涓€鍒楀鎴戜滑妯″瀷鐨勫垎绫昏兘鍔涘苟娌℃湁褰卞搷銆?/p>

#鍐嶇湅鐪嬬幇鍦╫bject绫诲瀷瀛楁鏈夊摢浜?/p>

object_columns=wc_data.columns[wc_data.dtypes=='object']

object_columns

澶勭悊瀹屽悗鐨勭粨鏋滄樉鐒跺氨绗﹀悎鎴戜滑棰勬湡浜嗭紝杩欐椂鎴戜滑灏卞彲浠ヨ€冭檻缂栫爜闂浜嗐€傞€氳繃瑙傚療杩欏嚑涓瓧娈碉紝鎴戜滑浼氬彂鐜拌繖浜涘瓧娈典腑鏈夊嚑涓瓧娈典腑鍑虹幇浜嗙壒鍒鐨勪笉鍚屾暟鎹紝濡傦細player锛宑hampion绛夛紝鑻ュ杩欎簺鍒楄繘琛岀嫭鐑紪鐮佹垜浠殑鏁版嵁闆嗕細鍛堢幇鍑虹壒鍒█鐤忕殑鐘舵€侊紝杩欐樉鐒朵笉鏄垜浠笇鏈涚湅鍒扮殑锛屽洜姝ゆ垜浠氨浣跨敤鏁堟灉鏇村ソ鐨勫畾搴忕紪鐮併€傦紙浣嗗畾搴忕紪鐮佷篃鏈夎嚜宸辩殑闂锛屾瘮濡傝繖浜涘瓧娈典笅鐨勬暟鎹苟娌℃湁鏄庢樉鐨勪紭鍏堥『搴忥紝浣嗕娇鐢ㄥ畾搴忕紪鐮佸氨浼氬嚭鐜拌繖涓棶棰橈紝鍥犳鍦ㄨ繘琛屾暟鎹垎鏋愭椂鏈夋椂骞舵病鏈夋爣鍑嗙瓟妗堬紝鏇撮噸瑕佺殑鏄潈琛★級

#瀵煎叆LabelEncoder鍖?/p>

from sklearn.preprocessing import LabelEncoder

#浣跨敤LabelEncoder鎶妎bject绫诲瀷鏁版嵁缂栧彿

le=LabelEncoder()

for each in object_columns:

wc_data[each]=le.fit_transform(wc_data[each])

鐜板湪鎴戜滑宸茬粡澶勭悊瀹屼簡鏁版嵁闆嗭紝鍙互寮€濮嬭繘琛屽缓妯′簡銆?/p>

#瀵煎叆妯″瀷LDA锛屽垎鍓叉暟鎹泦鍖咃紝琛¢噺妯″瀷鏁堟灉鐨刟ccuracy_score

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis

from sklearn.model_selection import train_test_split

from sklearn.metrics import accuracy_score

clf=LinearDiscriminantAnalysis()

X=wc_data.drop(['position'],axis=1)

y=wc_data['position']

X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=0)

clf.fit(X_train,y_train)

result=clf.predict(X_test)

#浣跨敤鍑嗙‘鐜囪 閲忔ā鍨嬫晥鏋?/p>

accuracy_score(y_test,result)

鎴戜滑浣跨敤LDA妯″瀷鐨勯粯璁ゅ弬鏁帮紙SVD浣滀负solver锛夊緱鍒扮殑鍑嗙‘鐜囨槸鎺ヨ繎92%锛岃繖涓粨鏋滆繕涓嶉敊锛屼絾鏄€氳繃鍙傛暟璋冩暣鎴栬€呭鍘熸暟鎹泦杩涗竴姝ュ鐞嗘湁鍙兘寰楀埌鏇村ソ鐨勭粨鏋溿€?/p>

鎺ヤ笅鏉ユ垜浠妯″瀷鍋氳繘涓€姝ュ垎鏋愶紝鍏堟潵鐪嬬湅explained variance ratio锛岃繖涓粨鏋滆〃鏄庢垜浠缁冪殑LDA妯″瀷鐨勫悇涓猚omponent瀵规暣浣撶殑鏂瑰樊瑙i噴搴︺€?/p>

#鐪嬬湅LDA鐨勫悇涓猚omponent鐨別xplained varaince ratio

clf.explained_variance_ratio_

鍥犱负鎴戜滑娌℃湁璁惧畾LDA妯″瀷鐨刵_component鍙傛暟锛屾墍浠omponent鐨勪釜鏁版槸妯″瀷鑷繁鍐冲畾鐨勶紝涔熷氨鏄痭_class-1=5-1=4銆傚湪4涓猚omponent涓紝鏈€楂樼殑瑙i噴搴︿负55%锛屾渶灏忕殑浠呬负0.4%锛岃繖鍥涗釜瑙i噴搴﹀姞璧锋潵鐨勫拰涓?銆?/p>

鐪嬭繃浜哻omponent瀵规暣浣撴柟宸殑瑙i噴搴︼紝鍐嶆潵鐪嬬湅姣忎釜鐗瑰緛瀵筁DA鍒嗙被璧峰埌浜嗗澶х殑浣滅敤锛?/p>

#鎶婂悇瀛楁鐨刢oeffcient鍋氭垚DataFrame淇濆瓨璧锋潵鏂逛究涓嬩竴姝ュ垎鏋?/p>

coefficients=pd.DataFrame(clf.coef_)

#鎵惧嚭coefficient鏈€楂樼殑涓変釜鐗瑰緛骞舵墦鍗板嚭鏉?/p>

for position in range(0,5):

sorted_coefficient=coefficients.iloc[position,:].sort_values(ascending=False)

columns=wc_data.columns[sorted_coefficient.index[0:3]]

print('Columns with highest coefficient for position ',position,' :',columns)

杩欓噷postiontion 0 涓篈DC锛宲ostion 1 涓烘墦閲庯紝postion 2 涓轰腑鍗曪紝position 3 涓鸿緟鍔╋紝position 4 涓轰笂鍗曘€?/p>

鈥榙mgshare鈥欙細鎵垮彈浼ゅ姣斾緥

鈥榢pm鈥欙細姣忓垎閽熷嚮鏉€鏁?/p>

鈥榓irdrake鈥欙細椋庨緳鍑绘潃鏁?/p>

鈥榝btime鈥欙細棣栨潃鍙戠敓鏃堕棿

鈥榳ardkills鈥欙細娓呴櫎瑙嗛噹鏁?/p>

鈥榳pm鈥欙細姣忓垎閽熷畨缃閲庢暟

鈥榳ards鈥欙細鎬绘斁缃閲庢暟

鈥榪uadras鈥欙細鍥涙潃娆℃暟

鈥榤onsterkillsenemyjungle鈥欙細鏁屾柟閲庢€嚮鏉€鏁?/p>

杩欎釜缁撴灉鏄剧劧涓嶅お濂界悊瑙o紝鍍忊€榓irdrakes鈥欙紝鈥榪uadras鈥欙紝鈥榝btime鈥欒繖绫荤壒寰佹垜浠樉鐒舵槸涓嶄細鎶婂畠浠拰鏌愪釜浣嶇疆鑱旂郴璧锋潵锛岃€屽儚鈥榙mgshare鈥欒繖涓壒寰佸湪瀵逛笁涓綅缃鍒嗙被浣滅敤閮芥槸鏈€楂樼殑锛岃繖濂藉儚涔熷拰鎴戜滑骞冲父瀵规父鎴忕殑鐞嗚В涓嶅お涓€鏍枫€備絾鏄篃鍍忔垜涔嬪墠鎻愬埌杩囩殑锛岃繖涓ā鍨嬭繕鏈夎繘姝ョ殑绌洪棿锛岃€屼笖鎴戞墍浣跨敤鐨勬暟鎹泦鏁版嵁骞朵笉鏄壒鍒厖瓒筹紝濡傛灉浣跨敤鏇村ぇ鐨勬暟鎹泦鍙兘鏁堟灉浼氭洿濂姐€備簬鏄垜灏卞紑濮嬫€濊€冿細濡傛灉鎶婃垜浠涓哄鍒嗙被鏈夌敤鐨勬暟鎹斁鍦ㄤ竴璧峰啀璁粌涓€涓ā鍨嬶紝浼氫笉浼氬噯纭巼姣旇繖涓ā鍨嬭楂樺憿锛?/p>

#鎶婃垜浠涓烘湁鐢ㄧ殑瀛楁鎻愬彇鎴愪竴涓柊鐨凞ataFrame

wc_new=wc_data.loc[:,['position','player','champion','k','d','a','dmgtochamps','dmgshare','wards','minionkills','monsterkills']]

#瑙傚療涓€涓嬫柊鐨凞ataFrame

wc_new.head()

鎴戞墍浣跨敤鐨勯兘鏄墠闈㈢殑鍒嗘瀽涓〃鐜板嚭姣旇緝鑳藉浣嶇疆淇℃伅杩涜鍖哄垎鐨勫瓧娈碉紝鎴戜滑鏉ョ湅鐪嬫晥鏋滄€庝箞鏍枫€?/p>

#浣跨敤鏂扮殑DataFrame璁粌LDA妯″瀷

clf=LinearDiscriminantAnalysis()

X=wc_new.drop(['position'],axis=1)

y=wc_new['position']

X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=0)

clf.fit(X_train,y_train)

result=clf.predict(X_test)

#瑙傚療鍑嗙‘鐜囧緱鍒?/p>

accuracy_score(y_test,result)

缁撴灉鍑烘潵浜嗭紝绔熺劧杩樻瘮涔嬪墠鐨勬ā鍨嬪噯纭巼宸笉灏戯紝杩欎篃璇存槑浜嗘垜浠仛鏁版嵁鎸栨帢鐨勬剰涔夈€傚湪宸ㄥぇ鐨勬暟鎹泦涓娇鐢ㄤ汉鐨勭粡楠屾垨鏄劅瑙夊苟涓嶆槸寰楀埌鍑嗙‘缁撴灉鐨勬渶濂藉姙娉曪紝瑕佸湪鏁版嵁涓寲鎺樺嚭鏈夌敤鐨勫疂钘忓氨瑕佸杽鐢ㄧ瀛︾殑鏂规硶锛屽湪鏁板鍜岀粺璁″鐨勫府鍔╀笅鎶婄湅浼兼棤鐢ㄦ垨姣棤鎰忎箟鐨勬暟鎹彉鎴愯緟鍔╂垜浠洿濂藉湴杩涜鍐崇瓥鐨勫伐鍏枫€?/p>

鍐欏湪鏈€鍚庣殑璇?/p>

浣滆€呰兘鍔涙湁闄愶紝鏈枃涓毦鍏嶆湁閿欒鎴栫喊婕忥紝甯屾湜鍚勪綅璇昏€呭彲浠ュ強鏃舵寚鍑?/p>

甯屾湜鍚勪綅鍙互瀵规湰绡囨彁鍑哄疂璐垫剰瑙?/p>

杞浇璇锋敞鏄庡嚭澶?/p>

PUBG鏁版嵁闆嗗垎鏋愭姤鍛?/p>

鏁版嵁闆嗗垎涓轰袱涓儴鍒?鏁版嵁闆?锛?agg鏁版嵁锛?15 瀛楁

date: 鏃堕棿game_size:闃熶紞鏁伴噺match_id:姣旇禌match_mode: 瀵瑰眬妯″紡锛堢涓€浜虹О杩樻槸绗笁浜虹О锛塸arty_size锛氱粍闃熸ā寮忥紙鍗曚汉璧涖€佸弻浜鸿禌銆佸洓浜鸿禌锛塸layer_assists锛氬姪鏀绘鏁皃layer_dbno锛氬嚮鍊掍汉鏁皃layer_dist_ride锛氳浇鍏风Щ鍔ㄨ窛绂籶layer_dist_walk锛氳璧拌窛绂籶layer_dmg锛氫激瀹虫暟鍊紁layer_kills锛氬嚮鏉€浜烘暟player_name锛氱帺瀹跺悕绉皃layer_survive_time锛氱帺瀹剁敓瀛樻椂闂磘eam_id锛氶槦浼峣dteam_placement锛氶槦浼嶆帓鍚?/p>

鏁版嵁闆?: kill dataset 12 瀛楁

killed_by锛氭浜℃柟寮弅iller_name锛氬嚮鏉€鑰呭悕瀛梜iller_placement锛氬嚮鏉€鑰呮帓鍚峩iller_position_x锛氬嚮鏉€鑰呬綅缃畑鍧愭爣killer_position_y锛氬嚮鏉€鑰呬綅缃畒鍧愭爣,map锛氬湴鍥緈atch_id锛氭瘮璧泃ime锛氬瓨娲绘椂闂?victim_name锛氳鍑绘潃鑰呭悕瀛梫ictim_placement锛氳鍑绘潃鑰呮帓鍚峣ctim_position_x锛氳鍑绘潃鑰呬綅缃畑鍧愭爣victim_position_y锛氳鍑绘潃鑰呬綅缃畒鍧愭爣

鎴戜滑鍙互鑷敱鎺㈢储鏁版嵁闂寸殑鍏崇郴锛屽彂鐜颁竴浜涙湁鎰忔€濈殑鐜拌薄 鎴戞兂瀹屾垚鐨勭洰鏍?

鍑绘潃浜烘暟鐨勫垎甯冩儏鍐靛崟鍙橀噺鍒嗘瀽: 鍑绘潃浜烘暟涓庢帓鍚嶏紝 缁勯槦妯″紡涓庡悆楦″鍙橀噺闂村垎鏋愯惤鍦版垚鐩掔儹鐐瑰尯鍩燂紙瀛樻椿鏃堕棿灏忎簬180s锛夋渶濂界敤鐨勬灙姊版垬鏂楀彂鐢熺殑璺濈鍒嗗竷涓嶅悓鎴樻枟璺濈涓渶濂界敤鐨勬灙姊拌缁冧竴涓猄VM棰勬祴鏄惁鑳藉鍚冮浮

鍙婃潃浜烘暟鐨勫垎甯冩儏鍐?/p>

閮ㄥ垎浠g爜 瀵煎叆鏁版嵁 骞跺鐞嗕涪澶辨暟鎹?/p>

agg = './pubg/agg0.csv'

kill = './pubg/kill0.csv'

agg_df = pd.read_csv(agg) # shape (13849287, 15)

kill_df = pd.read_csv(kill) # shape(13426348, 12)

agg_sub_df = agg_df[:1000000]

kill_sub_df = kill_df[:1000000]

agg_sub_deleted = agg_sub_df.dropna(axis=0)

kill_sub_deleted = kill_sub_df.dropna(axis=0)

agg_sub_deleted['player_kills'].describe() # 澶ч儴鍒嗕汉鐨勫嚮鏉€浜烘暟閮芥槸鍦?浜哄拰0浜?/p>

count 998580.000000 mean 0.887166 std 1.555946 min 0.000000 25% 0.000000 50% 0.000000 75% 1.000000 max 62.000000 Name: player_kills, dtype: float64

鍗曞彉閲忓垎鏋? 鍑绘潃浜烘暟涓庢帓鍚嶏紝 缁勯槦妯″紡涓庡悆楦?/p>

# 鏌ョ湅鍑绘潃浜烘暟涓庢帓鍚嶇殑鍏崇郴; 鏁翠綋鐪嬶紝鍑绘潃浜烘暟瓒呰繃10浜哄彲浠ユ帓鍒板墠5鍚嶆鐜囨瘮杈冨ぇ锛?40宸﹀彸鏃舵湁寮傚父鍙戠敓銆?/p>

data = agg_sub_deleted[['player_kills', 'team_placement']]

sns.set(style="darkgrid")

g = sns.relplot(x="player_kills", y="team_placement",height=4,linewidth=2,aspect=1.3, kind="line", data=data)

g.fig.autofmt_xdate() # Rotate coordinates

![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723221840370.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

agg_sub_1 = agg_sub_deleted[agg_sub_deleted['team_placement']==1.0] # 绛涢€夌涓€鍚嶆暟鎹?/p>

party_size_data = agg_sub_1.groupby('party_size') # 2 , 4, 1涓夌缁勯槦妯″紡, 鍒嗗埆鑾疯儨鐜?/p>

old = agg_sub_deleted.groupby('party_size')

# 鏌ョ湅姣忕缁勯槦妯″紡鐨勮幏鑳滄鐜? 4 浜虹粍闃熻幏鑳滄鐜囨渶澶э細 4%,

num = []

for i in range(1,5):

if i==3:

continue

size = old.get_group(i)

size2 = party_size_data.get_group(i)

num.append(round(size2.shape[0]/size.shape[0], 2))

name = ['solo', 'double', 'four-people']

f, ax = plt.subplots(figsize=(7, 3))

plt.bar(range(len(num)), num, color=sns.color_palette("cubehelix",3), tick_label=name)

plt.title('ranking 1 percentage by party_size')

![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723221929468.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

澶氬彉閲忛棿鍒嗘瀽

# 鐩稿叧鎬у垎鏋? date, match_id, ,match_mode, pary_size, player_name, team_id 杩欎簺瀛楁涓嶉渶瑕?/p>

not_use = ['date', 'match_id', 'match_mode', 'party_size', 'player_name', 'team_id']

all_columns = agg_sub_deleted.columns.values

agg_sub_corr = agg_sub_deleted[[column for column in all_columns if column not in not_use]] #绛涢€変笉鍦╪ot use涓殑瀛楁

corr_data = agg_sub_corr.corr(method='spearman')

plt.subplots(figsize=(9, 9))

sns.heatmap(corr_data, annot=True, vmax=1, square=True, cmap="Blues")

plt.show()

鍏虫敞鈥檛eam_placement鈥欏垪鍙戠幇闃熶紞鎺掑悕闄や簡涓庡瓨娲绘椂闂存湁寮虹儓鐨勮礋鐩稿叧浠ュ锛屼笌杞藉叿绉诲姩璺濈鍜岃璧拌窛绂讳篃鏈夎緝寮鸿礋鐩稿叧锛堟帓鍚嶈秺灏忚秺濂芥墍浠ユ槸璐熺浉鍏筹級 ![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723222039948.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

璇︾粏鏌ョ湅 鑾疯儨鐜?鍜?杞藉叿绉诲姩璺濈鐨勫叧绯?/p>

df_ride = agg_sub_deleted.loc[agg_sub_deleted['player_dist_ride']<10000, ['player_dist_ride', 'champion']]

labels=["0k-1k", "1k-2k", "2k-3k", "3k-4k","4k-5k", "5k-6k", "6k-7k", "7k-8k"]

df_ride['drive'] = pd.cut(df_ride['player_dist_ride'], 8, labels=labels) # pd.cut , 鍒嗗壊pandas 涓?0涓瓑璺濆瓙琛?/p>

df_ride.groupby('drive').champion.mean().plot.bar(rot=30, figsize=(10, 6), color=sns.color_palette("cubehelix",8))

plt.xlabel("drive distance")

plt.ylabel("prop of Champion")

![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723222201924.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

钀藉湴鎴愮洅鐑偣鍖哄煙锛堝瓨娲绘椂闂村皬浜?80s锛?/p>

閮ㄥ垎浠g爜

from scipy.ndimage.filters import gaussian_filter

import matplotlib.cm as cm

from matplotlib.colors import Normalize

kill_sub_df_die_map1 = kill_sub_df.loc[(kill_sub_df['map'] == 'ERANGEL')&(kill_sub_df['time'] < 180)&(kill_sub_df['victim_position_x']>0), :].dropna()

bg = imread('erangel.jpg')

hmap, extent = heatmap(plot_data_ev[:,0], plot_data_ev[:,1], 1.5, bins =200)

alphas = np.clip(Normalize(0, hmap.max()/100, clip=True)(hmap)*1.5,0.0,1.)

colors = Normalize(hmap.max()/100, hmap.max()/20, clip=True)(hmap)

colors = cm.bwr(colors)

colors[..., -1] = alphas

fig, ax = plt.subplots(figsize = (8,8))

ax.set_xlim(0, 4096);ax.set_ylim(0, 4096)

ax.imshow(bg)

ax.imshow(colors, extent = extent, origin = 'lower', cmap = cm.cool, alpha = 1)

plt.gca().invert_yaxis()

plt.title('erangel killed pepole Distribution')

![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723222356627.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

鏈€濂界敤鐨勬灙姊?/p>

閮ㄥ垎浠g爜

gun_category = kill_sub_df['killed_by'].unique()

MIRAMAR = kill_sub_df[kill_sub_df['map']=='MIRAMAR']

ERANGEL = kill_sub_df[kill_sub_df['map']=='ERANGEL']

kill_sub_df_gun_M = MIRAMAR.groupby('killed_by')

kill_sub_df_gun_E = ERANGEL.groupby('killed_by')

# 缁熻鍚勯噸姝﹀櫒鍑绘潃浜烘暟

M_data = {}

E_data = {}

for name in gun_category:

try:

sub = kill_sub_df_gun_M.get_group(name)

if sub.shape[0]>100:

M_data[name]=sub.shape[0]

except Exception as e:

continue

for name in gun_category:

try:

sub = kill_sub_df_gun_E.get_group(name)

if sub.shape[0]>100:

E_data[name]=sub.shape[0]

except Exception as e:

continue

缁熻鍙戠幇鏃犺鍦ㄨ壘浼︽牸杩樻槸绫虫媺椹紝 M416, SCAR-L, M16A4 閮芥槸鍑绘潃浜烘暟鍓嶄笁鍚嶇殑姝﹀櫒 ![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723222514434.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

鎴樻枟鍙戠敓鐨勮窛绂诲垎甯?/p>

閮ㄥ垎浠g爜

vec1 = np.array([93091.37, 722236.4])

vec2 = np.array([92238.68, 723375.1])

dist = np.linalg.norm(vec1 - vec2)

vec1 =kill_sub_df[['killer_position_x', 'killer_position_y']].values

vec2 = kill_sub_df[['victim_position_x', 'victim_position_y']].values

dist = []

for i in range(len(vec1)):

dis = np.linalg.norm(vec1[i]-vec2[i])

dist.append(dis//100)

#澧炲姞涓€鍒楀嚮鏉€璺濈

kill_sub_df['kill_dist'] = dist

short_dis = kill_sub_df[kill_sub_df['kill_dist']<=50]

mid_dis = kill_sub_df[(kill_sub_df['kill_dist']>50) & (kill_sub_df['kill_dist']<=300)] # 澶氭潯浠剁瓫閫?)&()

long_dis = kill_sub_df[(kill_sub_df['kill_dist']>300) & (kill_sub_df['kill_dist']<800)]

super_dis = kill_sub_df[kill_sub_df['kill_dist']>=800]

缁濆ぇ閮ㄥ垎浜哄湪50绫充互鍐呰繎璺濈琚嚮鏉€ ![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723222801114.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

涓嶅悓鎴樻枟璺濈涓渶濂界敤鐨勬灙姊?/p>

閮ㄥ垎浠g爜

shor_gun = short_dis.groupby('killed_by')

mid_gun = mid_dis.groupby('killed_by')

long_gun = long_dis.groupby('killed_by')

super_gun = super_dis.groupby('killed_by')

def count_gun(df, category):

data = {}

for name in category:

try:

sub = df.get_group(name)

if sub.shape[0]>100:

data[name]=sub.shape[0]

except Exception as e:

continue

data = sorted(data.items(), key=lambda x:x[1],reverse=True)

return data[1:4]

shor_data = count_gun(shor_gun, gun_category)

mid_data = count_gun(mid_gun, gun_category)

long_data = count_gun(long_gun, gun_category)

super_data = count_gun(super_gun, gun_category)

杩戣窛绂绘垬鏂楋紝涓窛绂绘垬鏂楋紝M416, SCAR-L, AKM 琛ㄧ幇鏈€濂?杩滆窛绂绘垬鏂? Kar98k, M416, Mini 14 涓夌姝﹀櫒琛ㄧ幇鏈€濂?瓒呰繃800绫崇殑鎴樻枟鏁版嵁鍙兘鏈夐棶棰?![鍦ㄨ繖閲屾彃鍏ュ浘鐗囨弿杩癩(https://img-blog.csdnimg.cn/20200723223001922.png?x-oss- process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thc2lrbw==,size_16,color_FFFFFF,t_70)

璁粌涓€涓猄VM棰勬祴鏄惁鑳藉鍚冮浮

閮ㄥ垎浠g爜

# 涓嶈鐨勫瓧娈?/p>

all_colum = agg_sub_deleted.columns

no_use = ['match_id', 'match_mode', 'player_name', 'team_id', 'team_placement', 'date']

agg_svm = agg_sub_deleted[[colum for colum in all_colum if colum not in no_use]]

df_dataset = pd.concat([agg_negative_sub, agg_positive],axis=0) # 鍚堝苟涓や釜df锛岀珫鍚戞嫾鎺?/p>

df_dataset = shuffle(df_dataset)

y = df_dataset['champion'].values

X = df_dataset.drop(columns=['champion']).values

X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.3)

clf = make_pipeline(StandardScaler(), SVC(gamma='auto'))

clf.fit(X_train, y_train)

print('mean accuracy:', clf.score(X_test, y_test))

mean accuracy: 0.940930317181151

鎵嬪姩妫€娴?/p>

test = agg_negative.iloc[0][:-1].values # 鍒犻櫎鏍囩鍒?/p>

clf.predict([test]) == agg_negative.iloc[0][-1]

array([ True])

鎬荤粨

澶ч儴鍒嗕汉鐨勫嚮鏉€浜烘暟閮芥槸鍦?浜哄拰0浜? 骞冲潎鍑绘潃鏁?.88鍑绘潃浜烘暟瓒呰繃7浜哄彲浠ユ帓鍒板墠5鍚嶆鐜囧緢澶ц烦浼炴椂搴旇閬垮紑鍥句腑鏍囨敞鐑偣鍖哄煙闃熶紞鎺掑悕闄や簡涓庡瓨娲绘椂闂存湁寮虹儓鐨勮礋鐩稿叧浠ュ锛屼笌杞藉叿绉诲姩璺濈鍜岃璧拌窛绂讳篃鏈夎緝寮鸿礋鐩稿叧锛堟帓鍚嶈秺灏忚秺濂芥墍浠ユ槸璐熺浉鍏崇粺璁″彂鐜版棤璁哄湪鑹句鸡鏍艰繕鏄背鎷夐┈锛?M416, SCAR-L, M16A4 閮芥槸鍑绘潃浜烘暟鍓嶄笁鍚嶇殑姝﹀櫒缁濆ぇ閮ㄥ垎浜哄湪50绫充互鍐呰繎璺濈琚嚮鏉€杩戣窛绂绘垬鏂楋紝涓窛绂绘垬鏂楋紝M416, SCAR-L, AKM 琛ㄧ幇鏈€濂借繙璺濈鎴樻枟, Kar98k, M416, Mini 14 涓夌姝﹀櫒琛ㄧ幇鏈€濂介€夊彇鍚堥€傜殑鐗瑰緛锛孲VM鍑嗙‘鐜囪揪鍒颁簡0.94 銈ゃ偙銈ゃ偙锛?/p>

pubg职业选手数据榜,蔚小理能再次绝地重生吗(上) (2024)
Top Articles
Baldur’s Gate 3 Whispering Depths: Defeat the Phase Spider Matriarch
How to Complete the Gauntlet of Shar Trials - Baldur's Gate III Guide - IGN
Corgsky Puppies For Sale
Die Skihallen in Deutschland im Überblick
Fresenius Medical Care to launch 5008 dialysis machine: improved patients` quality of life and efficient use of resources
Basic Setup – OpenXR & Pimax HMDs...
What Auto Parts Stores Are Open
Financial Literacy for Students | EVERFI
What Was D-Day Weegy
An Honest Review of Accor Live Limitless (ALL) Loyalty Program
Guy I'm Talking To Deleted Bumble
Uta Frontrunner Twitter
Swgoh Boba Fett Counter
Cubilabras
Craigslist Org Hattiesburg Ms
As Trump and Harris spar, ABC's moderators grapple with conducting a debate in a polarized country
Fly Fit Bungee Rome Ga
Bunni.soph
Kohls Locations Long Island
Meg 2: The Trench Showtimes Near Phoenix Theatres Laurel Park
How to Be an Extra in a Movie (and What to Expect)
Craigslist St. Paul
Nyu Paralegal Program
Shaws Star shines bright selling for 16,000gns at the Red Ladies and Weaned Calf sale.
Unit 9 Exam Joshua'S Law - dawson
Craigslist Lubbick
Rek Funerals
Resident Evil Netflix Wiki
Stuckey Furniture
16 Things to Do in Los Alamos (+ Tips For Your Visit)
Where To Find Permit Validation Number
Best Places To Eat In Winter Park Fl
Clothes Mentor Overland Park Photos
How Did Laura Get Narally Pregnant
Chalupp's Pizza Taos Menu
First Republic Corporate Online
Dallas College Radiology Packet
Los Alamos Beach in Torremolinos: A Perfect Mediterranean Escape - Mama Málaga
Lockstraps Net Worth
123Movies Iron Man 2
Watch Shark Tank TV Show - ABC.com
Jason Brewer Leaving Fox 25
Honda Fury Forums
How Do I Change My Usaa Pin
[PDF] (Indices und Systematiken) - Free Download PDF
Sun Massage Tucson Reviews
Inside Dave Grohl's past love life and cheating scandals
El Confidencial Vanitatis
19 BEST Stops on the Drive from Te Anau to Milford Sound +Road Trip Tips!
Craigslist Farm And Garden Lexington
South Florida residents must earn more than $100,000 to avoid being 'rent burdened'
Randstad Westside
Latest Posts
Article information

Author: Dr. Pierre Goyette

Last Updated:

Views: 5415

Rating: 5 / 5 (70 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Dr. Pierre Goyette

Birthday: 1998-01-29

Address: Apt. 611 3357 Yong Plain, West Audra, IL 70053

Phone: +5819954278378

Job: Construction Director

Hobby: Embroidery, Creative writing, Shopping, Driving, Stand-up comedy, Coffee roasting, Scrapbooking

Introduction: My name is Dr. Pierre Goyette, I am a enchanting, powerful, jolly, rich, graceful, colorful, zany person who loves writing and wants to share my knowledge and understanding with you.