pandas處理丟失資料

2021-08-20 19:45:25 字數 1486 閱讀 4498

#有兩種丟失資料的方式:

#    none

#    np.nan(nan) 

#1, none

# none是python當中自帶的,型別為python object,

# 所以,none是不能參與到任何的計算當中的

#2, np.nan

#np.nan是浮點型別,能參與到計算當中,但是計算的結果為nan

#pandas中none與np.nan都被視為np.nan

import numpy as np

import pandas as pd

from pandas import series,dataframe

df1 = dataframe(data=np.random.randint(0,100,size=(3,3)),

columns=list('abc'))

df1df1.loc[0,'b'] = none

df1df1['c'] = np.nan

df1

#pandas中none與np.nan的操作

#isnull()

#notnull()

#dropna() 過濾丟失的資料

#fillna() 填充丟失的資料

#新增一行,一列

df1.loc[3] = [12,12,34]

df1#dropna()預設是過濾所以丟失的值

df1.dropna()

#使用axis可以控制軸向變化

df1.dropna(axis=1)

# value的引數預設是把所以的空值填充

df1.fillna(value=100)

#假設張三,李四,王五參加模擬考試,但是張三因為突然想明白了人生,故而放棄了英語考試。

#因為記為none,據此請建立乙個dataframe,命名為score

data = np.random.randint(0,100,size=(3,3))

columns = ['yuwen','shuxue','yingyu']

index = ['zhangsan','lisi','wangwu']

score = dataframe(data=data,index=index,columns=columns)

score

score.loc['zhangsan','yingyu'] = np.nan

score

#老師決定根據用數學的分數來填充張三的英語成績,如何實現

#用李四的英語成績來填充張三的英語成績?

score.fillna(method='ffill',axis=1)

score.fillna(method='bfill',axis=0)

Pandas處理丟失資料

pandas處理丟失資料 1 建立含nan的矩陣 dates pd.date range 20130101 periods 6 df pd.dataframe np.arange 24 reshape 6,4 index dates,columns a b c d df.iloc 0,1 np.na...

pandas處理丟失資料

pandas將none和nan視為可交換的,它們都可以用來指示丟失的資料。none可以代替丟失值 哨兵值 並不適合所有情況,只能用於陣列的型別為物件的情況。none會導致一些聚合操作,比如sum 和min 會報錯。nan 代替丟失值 另外一中哨兵值 一種特殊的浮點型資料,不管什麼操作,只要有nan,...

Pandas處理丟失資料

dates pd.date range 20130101 periods 6 df pd.dataframe np.arange 24 reshape 6,4 index dates,columns a b c d df.iloc 0,1 np.nan df.iloc 1,2 np.nan prin...