資料分析 資料校驗

2022-05-04 07:33:07 字數 2494 閱讀 2620

很多時候在資料分析之前,我們需要對樣本進行校驗,以確定樣本的價值。

先寫入資料:

import

pandas as pd

import

numpy as np

df = pd.dataframe()

#

判斷是否為缺失值(空值)

df.isnull()

#

統計出每一列的缺失值數目

每一列缺失比例

df.isnull().sum()/df.shape[0]

#

判斷非空值的數目

筆記:這裡也可以用到describe方法,如下:

#

使用describe方法檢視資料的完整性,統計出了非空值的數目

忘了describe方法的話,請檢視《python之pandas知識點》

很多樣本的時間資料並不是以datatime64型別儲存的,此時我們得先進行「資料型別修改」

詳見:《python之pandas知識點》的4.3資料修改

之後進行最大最小相減就ok了。

print(date.max()-date.min())

#

二班和四班是相同的

df1 = pd.dataframe()

dataframe.drop_duplicates(subset=none, keep='first', inplace=false)

#

刪除重複樣本(行)

計算樣本重複率

(df1.shape[0] - df1.drop_duplicates().shape[0])/df1.shape[0]

特徵重複檢驗相比樣本重複檢驗要麻煩一點,因為沒有現成的函式可呼叫。

需要用到相似度的概念,如下:

#

使用pandas的方法:dataframe.corr(method='pearson')

asso = df1.corr()

#

輸出asso,看一下是怎樣的先

不難看出,這是乙個對稱矩陣,所以我們只需要判斷右上半形的資料便可。

#

輸出應刪除的columns,1.0可根據需求改動

delcol =

for i in

range(len(asso)):

for j in range(i+1,len(asso)):

if asso.iloc[i,j] == 1.0:

print(delcol)

#

輸入dataframe,輸出特徵重複的列名,可直接複製呼叫

def drop_features(data,way = '

pearson

',assorate = 1.0):

'''此函式用於求取相似度大於assorate的兩列中的乙個,主要目的用於去除數值型特徵的重複

data:資料框,無缺省

assorate:相似度,預設為1

'''assomat = data.corr(method =way)

delcol =

length =len(assomat)

for i in

range(length):

for j in range(i+1,length):

if asso.iloc[i,j] >=assorate:

return(delcol)

效果如下:

drop_features(df1)
是不是超好用,巨方便~~~不謝

資料分析 資料分析概述

了解業務 了解資料 確認業務和資料 預期分析和管理 資料分析方式01.了解資料資料 1.測量標度型別 屬性本源並不是數字或者符號,通過測量標度將數值或者符號和物件的屬性建立關聯。屬性的型別 測量尺度 nominal 標稱 等於或者不等於 一對一的變換 ordinal 序數 大於或者小於 單調函式的變...

資料分析 資料分析的誤區

在資料分析的過程中,我們難免會走一些彎路,但有些彎路是可以避免的,下面我將介紹幾個資料分析過程中常見的誤區 我們一定都聽說過二戰中的乙個經典示例 軍方為了提高戰鬥機飛行員的生還率,打算在飛機上增加裝甲的厚度,但不能在所有部位加厚,這樣會喪失戰機的靈活性,於是軍方請了統計學家來研究,這些專家在一開始就...

資料分析 資料準備

數值 文字 日期 貨幣 會計專用 時間 百分比 分數 科學計數 特殊等。資料表的設計要求 一維表與二維表 匯入文字資料 自動匯入 資料 a.數值型 輸入被調查者實際填入的數值即可 b.單選題 採用1 2 3 4分別代表a b c d四個選項 c.多選題 二分法 把每乙個相應選項定義為乙個變數,每乙個...