Task 1 賽題理解
def reduce_mem_usage(df):
start_mem = df.memory_usage().sum() / 1024**2
print('Memory usage of dataframe is {:.2f} MB'.format(start_mem))
for col in df.columns:
col_type = df[col].dtype
if col_type != object:
c_min = df[col].min()
c_max = df[col].max()
if str(col_type)[:3] == 'int':
if c_min > np.iinfo(np.int8).min and c_max < np.iinfo(np.int8).max:
df[col] = df[col].astype(np.int8)
elif c_min > np.iinfo(np.int16).min and c_max < np.iinfo(np.int16).max:
df[col] = df[col].astype(np.int16)
elif c_min > np.iinfo(np.int32).min and c_max < np.iinfo(np.int32).max:
df[col] = df[col].astype(np.int32)
elif c_min > np.iinfo(np.int64).min and c_max < np.iinfo(np.int64).max:
df[col] = df[col].astype(np.int64)
else:
if c_min > np.finfo(np.float16).min and c_max < np.finfo(np.float16).max:
df[col] = df[col].astype(np.float16)
elif c_min > np.finfo(np.float32).min and c_max < np.finfo(np.float32).max:
df[col] = df[col].astype(np.float32)
else:
df[col] = df[col].astype(np.float64)
else:
df[col] = df[col].astype('category')
end_mem = df.memory_usage().sum() / 1024**2
print('Memory usage after optimization is: {:.2f} MB'.format(end_mem))
print('Decreased by {:.1f}%'.format(100 * (start_mem - end_mem) / start_mem))
return df
DataFrame.values()外匯跟單gendan5.com 返回 DataFrame 的 Numpy 表示形式。
# 簡單預處理
train_list = []
for items in train.values:
train_list.append([items[0]] + [float(i) for i in items[1].split(',')] + [items[2]])
train = pd.DataFrame(np.array(train_list))
train.columns = ['id'] + ['s_'+str(i) for i in range(len(train_list[0])-2)] + ['label']
train = reduce_mem_usage(train)
test_list=[]
for items in test.values:
test_list.append([items[0]] + [float(i) for i in items[1].split(',')])
test = pd.DataFrame(np.array(test_list))
test.columns = ['id'] + ['s_'+str(i) for i in range(len(test_list[0])-1)]
test = reduce_mem_usage(test)
Memory usage of dataframe is 157.93 MB
Memory usage after optimization is: 39.67 MB
Decreased by 74.9%
Memory usage of dataframe is 31.43 MB
Memory usage after optimization is: 7.90 MB
Decreased by 74.9%
train.head()
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2763631/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- task1
- 理解Task和和async awaitAI
- 深入理解gradle中的taskGradle
- Spark Job-Stage-Task例項理解Spark
- 推薦系統 task 1 @datawhale
- 【Contest】Nowcoder 假日團隊賽1 題解+賽後總結
- 第七屆藍橋杯大賽個人賽省賽(軟體類)真題 C語言A組 1C語言
- 社群Task挑戰賽開啟,階梯式任務等你來戰
- 天池新聞推薦入門賽之【資料分析】Task02
- 天池金融風控-貸款違約挑戰賽 Task5 模型融合模型
- 由亞馬遜雲科技支援的全新F1洞察輔助賽車迷理解賽道上的瞬間決定亞馬遜
- SMUSpring天梯賽1Spring
- 賽題要點
- Event loop的macro task和micro taskOOPMac
- Datawhale 第20期 資料視覺化Task1視覺化
- 【CH Round #48 - Streaming #3(NOIP模擬賽Day1)】 題解
- BOT大賽計算機視覺賽題經驗分享:賽題詳解與思路分析計算機視覺
- CCTF部分賽題分析
- Google賽馬問題Go
- .NET - Task.Run vs Task.Factory.StartNew
- 高頻網紅面試題['1','2','3'].map(parseInt) 原理解析面試題
- 競賽1-阿里天池-口碑客流量預測-題解總結阿里
- 2019 KCTF 晉級賽Q1 | 第三題點評及解題思路
- Spark Task 的執行流程② - 建立、分發 TaskSpark
- celery筆記三之task和task的呼叫筆記
- Task.Run(async () =>{}) 和 Task.Run(() =>{})區別
- Task04:機器學習賽事:快來一起挖掘幸福感--阿里雲天池機器學習阿里
- 2019KCTF 晉級賽Q1 | 第九題點評及解題思路
- 2019KCTF 晉級賽Q1 | 第十題點評及解題思路
- Datawhale-爬蟲-Task1(學習get與post請求)爬蟲
- Task.Run(), Task.Factory.StartNew() 和 New Task() 的行為不一致分析
- linux IO理解-1Linux
- 1.系統理解
- 2013長沙網路賽H題Hypersphere (蛋疼的題目 神似邀請賽A題)
- 通俗理解kaggle比賽大殺器xgboost
- CCAH-CCA-500-4題:Where are Hadoop task log files stored?Hadoop
- Spark Task 的執行流程④ - task 結果的處理Spark
- NewStarCTF 2023 公開賽道 做題隨筆(WEEK1|MISC部分)