深度學習--資料預處理

Annaprincess發表於2024-07-28

資料預處理

import os
import pandas as pd
import torch
#建立csv檔案
os.makedirs(os.path.join('..','data'),exist_ok=True)
data_file=os.path.join('..','data','house_tiny.csv')
#往檔案裡寫內容
with open(data_file,'w') as f:
    f.write('NumRooms,Alley,Price\n')
    f.write('NA,PAVE,127500\n')
    f.write('2.0,NA,106000\n')
    f.write('4.0,NA,178100\n')
    f.write('NA,NA,140000\n')
#透過pandas庫讀取csv檔案
data=pd.read_csv(data_file)
print(data)
#資料處理
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]#iloc指的是indexlocation下標位置
#要先處理缺失字串再處理缺失數字
inputs = pd.get_dummies(inputs, dummy_na=True)#增加的列 Alley_PAVE表示是均值,  Alley_nan表示不是數字-->對字串處理
inputs = inputs.fillna(inputs.mean())#對數字型缺失填充均值
print(inputs)
#轉為張量tensor
X = torch.tensor(inputs.to_numpy(dtype=float))
y = torch.tensor(outputs.to_numpy(dtype=float))
print(X)
print(y)
#最後輸出的是64位常規的浮點型對於深度學習一般用32位後續會學!

深度學習--資料預處理

2024/7/28

相關文章