機器學習100天 第一天(資料預處理)

2021-09-18 01:20:56 字數 1313 閱讀 9270

step 1:導入庫 

numpy:包含數學計算函式

pandas:用於匯入和管理資料集

step 2:匯入資料集

資料集通常都是  .csv格式。csv檔案以文字形式儲存**資料。檔案的每一行是一條資料記錄。

用 pandas 的 read_csv 讀取本地csv檔案為乙個資料幀。

然後從資料幀中製作自變數和因變數的矩陣和向量。    

dataset = pd.read_csv('data.csv')    # 讀取csv檔案,也可以在單引號裡直接放入資料所在路徑

x = dataset.iloc[ : , :-1 ].values # iloc除了最後一列,提取其他列資料

y = dataset.iloc[ : , 3].values # 取第四列(索引為3)的所有行,即最後一列的資料 purchased

# dataframe.values 取值,檢視資料框的具體資料值,不包括索引

step 3:處理丟失資料

可以用整列的平均值或中間值替換丟失的資料。

用 sklearn.preprocessing庫中的 imputer 類完成這項任務。

(**注釋需要補充)

from sklearn.preprocessing import imputer

imputer = imputer(missing_values = "nan", strategy = "mean", axis = 0) #axis=0(1),表示對每一列(行)進行這個操作;

imputer = imputer.fit(x[ : , 1:3]) #對x中的1、2列處理

x[ : , 1:3] = imputer.transform(x[ : , 1:3])

step 4:解析分類資料

分類資料指的是含有標籤值而不是數字值的變數。取值範圍通常是固定的。需要把標籤解析成數字。

用 sklearn.preprocessing庫匯入laberencoder類 實現。

step 5:拆分資料集為測試集和訓練集

把資料集拆分為兩部分,訓練集:測試集=8:2 .

用 sklearn.cro-ssvalidation庫中的train_test_split()方法 。

step 6:特徵縮放

大部分模型演算法使用兩點間的歐氏距離表示,但此特徵在幅度、單位和範圍姿態問題上變化很大。

在距離計算中,高幅度的特徵比低幅度特徵權重更大。可用特徵標準化或z值歸一化解決。

用 sklearn.preprocessing庫的standardscalar類 解決

100天建站 第一天

今天是宣言的第一天,我發現我工作順序給弄混了應該是先分析對手然後再針對性的做點什麼。有句話說 當發現方向錯了以後,後退就是前進 於是乎我就把我的程序和步驟給小小的調整了一下。今天著重登入了一下競爭對手的 進行了一些分析。發現了許多問題。其中最主要的也是其二者都有的毛病就是更新不及時。具體問題如下 站...

第一天 陣列

一維陣列特點 長度一旦確定不可以改變其元素必須是 相同 型別,不允許出現混合型別。陣列中的元素可以是任何資料型別,包括基本型別和引用型別。陣列的初始化 靜態初始化 在定義陣列的同時就為陣列元素分配空間並賦值 動態初始化 陣列定義與為陣列元素分配空間和賦值的操作分開進行 陣列的遍歷 1 普通for迴圈...

機器學習第一天

1.人工智慧在現實生活的應用 計算機 電子商務 案列 2.人工智慧的三要素 資料 演算法 計算力 3.cpu和gpu的對比 cpu主要適合i o密集型的任務 gpu主要適合計算密集型任務 什麼型別的程式適合在gpu上執行 計算密集型的程式 易於並行的程式 4.人工智慧 機器學習 深度學習 機器學習是...