t1
w x y z
a 0123
b 4567
c 891011######t1.loc[]是通过标签来获取数据'取某一行某一列'
t1.loc["a","w"]0
t1.loc[["a","c"],["w","y"]]
w y
a 02
c 810'取行的时候冒号加不加都可以'
t1.loc["a",:]
w 0
x 1
y 2
z 3
t1.loc[["a","c"],:]
w x y z
a 0123
c 891011'取某一列'
t1.loc[:,"y"]
a 2
b 6
c 10
######t1.iloc[]是通过位置来获取数据
t1
w x y z
a 0123
b 4567
c 891011'取第一行'
t1.iloc[1,:]
w 4
x 5
y 6
z 7'[[行,列],[行,列]]'
t1.iloc[[0,2],[2,1]]
y x
a 21
c 109'赋值'
t1.iloc[[0,2],[2,1]]=200
t1
w x y z
a 02002003
b 4567
c 820020011
'判断是否含有NAN'
pd.isnull(t1)
w x y z
a FalseFalseFalseFalse
b FalseFalseFalseFalse
c FalseFalseFalseFalse
pd.notnull(t1)
w x y z
a TrueTrueTrueTrue
b TrueTrueTrueTrue
c TrueTrueTrueTrue'选择w列中不含NAN的行'
t1[pd.notnull(t1["w"])]
w x y z
a 02002003
b 4567
c 820020011'删除有NAN的行,axis=0表示行'
t1.dropna(axis=0)
w x y z
a 02002003
b 4567
c 820020011'当其中行含有NAN,则删除整行'
t1.dropna(axis=0,how="any")
w x y z
a 02002003
b 4567
c 820020011'当其中行不全含有NAN,则不删除整行'
t1.dropna(axis=0,how="all")
w x y z
a 02002003
b 4567
c 820020011
d2=[{'name':'xiaom','age':12,'tel':1234},{'name':'xiaomm','tel':13567},{'name':'huahua','age':10}]
d3=pd.DataFrame(d2)
d3
name age tel
0 xiaom 12.01234.01 xiaomm NaN 13567.02 huahua 10.0 NaN
'NAN中填充0'
d3.fillna(0)
name age tel
0 xiaom 12.01234.01 xiaomm 0.013567.02 huahua 10.00.0'NAN中填充均值'
d3.fillna(d3.mean)'每一列设置均值填充'
d3
name age tel
0 xiaom 12.01234.01 xiaomm NaN 13567.02 huahua 12.0 NaN
d3["age"].mean()12.0
d3["age"]=d3["age"].fillna(d3["age"].mean())
d3
name age tel
0 xiaom 12.01234.01 xiaomm 12.013567.02 huahua 12.0 NaN