#使用seaborn探索馬拉松比賽成績資料
import numpy as np
import pandas as pd
%matplotlib inline
import seaborn as sns
import datetime
#把字串轉換成時間型別
defconvert_time
(s):
h, m, s = map(int, s.split(':'))
return datetime.timedelta(hours=h, minutes=m, seconds=s)
data = pd.read_csv('marathon-data.csv',
converters=)
#增加一列,將時間換算成秒
data['split_sec'] = data['split'].astype(int) / 1e9
data['final_sec'] = data['final'].astype(int) / 1e9
#通過jointplot函式畫圖,對資料有個認識
圖中的實點線表示乙個人全程保持乙個速度跑完馬拉松,即上半程和下半程耗時相同。然而實際的成績分布表明,絕大多數人都是越往後跑的越慢(也符合常理)
#建立一列(split_frac)來表示前後半程的差異,衡量比賽選手後半程加速或前半程的程度
data['split_frac'] = 1- 2 * data['split_sec'] / data['final_sec']
#如果前後半程差異係數小於0,就表示這個人是後半程加速型選手。下面畫出差異係數的分布圖
#看看前後半程差異係數與其他變數沒有沒相關性,用矩陣圖pairgrid繪製
從圖中可以看出,雖然前後半程差異係數與年齡沒有顯著的相關性,但是與比賽的最終成績顯著的相關性:全程耗時最短的選手,往往都是前後半程盡量保持節奏一致、耗時非常接近的人。
#對比男女選手的差異,繪製兩組選手前後半程差異係數的頻次直方圖
在前後半程耗時接近的選手中,男選手比女選手多很多。男女選手的分布看起來幾乎都是雙峰分布
#對比兩個年齡構成函式的小提琴圖
#建立乙個新的列,表示每名選手的年齡段
20多歲到50多歲各年齡段的男選手的前後半程差異係數密度要比同年齡段女選手低一些
#看看前後半程差異係數和比賽成績的關係
似乎後半程加速的選手都是比賽成績低於15000秒,即4小時以內的種子選手。低於這個成績的選手很少有顯著的後半程加速。
黑客馬拉松題目 舉辦黑客馬拉松的提示
黑客馬拉松題目 當您合併一家全球金融服務,和資料公司時,您會得到什麼呢?該公司雇用了5,000名軟體開發人員,而這些軟體開發人員的創始人都是慈善事業的創始人。如果您是bloomberg 那麼您將獲得一系列公司贊助的黑客馬拉松,員工,社群成員,學生和其他人員在乙個週末聚會在一起,以利用開放源 工具 包...
1870 馬拉松後記
time limit 1 sec memory limit 128 mb submit 58 solved 23 submit status web board 毛毛雨學姐跑完了半程馬拉松,接下來決定去參加山地越野賽了,主辦方聽說毛毛雨學姐是一位acmer,就想讓她來幫忙解決一下 賽場問題 已知在山...
演算法馬拉松24
n 1個點的多邊形。給外圈的邊標記上1 n,裡圈的邊也標記上1 n,使得對於乙個外圈相鄰點與中間點構成的三角形的邊權之和都相等。n le 10 6 顯然每個三角形權值和為 frac 一開始簡化成n個數排乙個環,相鄰兩個數的和不相等並且有上下界,然後並不好做 構造了一下n 5發現外圈正好1.5,內圈1...