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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 分子AI預測賽Task1筆記AI筆記
- 理解Task和和async awaitAI
- task1
- 走進Task(1):什麼是Task
- Task1&Task2學習筆記筆記
- 2023年第1季社群Task挑戰賽開啟,等你來戰!
- 深入理解gradle中的taskGradle
- task1安裝
- Spark Job-Stage-Task例項理解Spark
- 新聞推薦競賽-task01
- 推薦系統 task 1 @datawhale
- Datawhale DRL task1 隨筆
- 房價預測Task1
- 【Contest】Nowcoder 假日團隊賽1 題解+賽後總結
- 猿人學web端爬蟲攻防大賽賽題第1題——js 混淆 - 原始碼亂碼Web爬蟲JS原始碼
- C# Task若干問題淺析C#
- Camunda User Task:Task Listeners
- Task03 && Task 04
- 大模型技術方向Task1筆記大模型筆記
- 【1】Kaggle賽題解讀:RSNA 2024 Lumbar Spine Degenerative Classification
- SMUSpring天梯賽1Spring
- CSP 加賽 1
- [賽記] csp-s加賽1
- 社群Task挑戰賽開啟,階梯式任務等你來戰
- 天池新聞推薦入門賽之【資料分析】Task02
- 2019 KCTF 晉級賽Q1 | 第三題點評及解題思路
- 素養賽Python複賽題——錯排問題Python
- [Datawhale AI 夏令營] Task1: 跑通YOLO方案baselineAIYOLO
- Datawhale X 魔搭 AI夏令營 AIGC方向 Task1AIGC
- Datawhale 第20期 資料視覺化Task1視覺化
- 【CH Round #48 - Streaming #3(NOIP模擬賽Day1)】 題解
- Event loop的macro task和micro taskOOPMac
- 比賽小技巧(1)
- 2019KCTF 晉級賽Q1 | 第九題點評及解題思路
- 2019KCTF 晉級賽Q1 | 第十題點評及解題思路
- 天池金融風控-貸款違約挑戰賽 Task5 模型融合模型
- 由亞馬遜雲科技支援的全新F1洞察輔助賽車迷理解賽道上的瞬間決定亞馬遜
- task 7