Pandas学习笔记

Pandas学习笔记

导入库

import pandas as pd

读取文件数据

df = pd.read_csv("data/dogName.csv")

Series函数

带标签的一维数组;构成:键 值

t = pd.Series([1,2,3,4,5])

Pandas学习笔记_第1张图片

改变索引

t2 = pd.Series([1,2,3,4,5],index=list("abcde"))

Pandas学习笔记_第2张图片

通过字典创建

temp_dict = {"name":"xiaohong","age":30,"tel":10086}
a = pd.Series(temp_dict)

Pandas学习笔记_第3张图片

几种取值方式

a[:]
a["tel"]
a[:2]
a[["name","age","f"]]#没有关键字显示NAN
t[t>4]
a.index
list(a.index)
a.values

DataFrame函数

二维,行索引index(axis=0),列索引columns(axis=1)

pd.DataFrame(np.arange(12).reshape(3,4))

Pandas学习笔记_第4张图片

更换索引值

pd.DataFrame(np.arange(12).reshape(3,4),index=list("abc"),columns=list("XYZW"))

Pandas学习笔记_第5张图片

利用字典

d1 = {"name":["小红","小刚"],"age":[22,25],"tel":[10086,10010]}
pd.DataFrame(d1)

Pandas学习笔记_第6张图片

d2 = [{"name":"xiaoming","age":11,"tel":10086},{"name":"xiaozhang","age":12},{"name":"liming"}]
m = pd.DataFrame(d2)

Pandas学习笔记_第7张图片

DataFrame()的几种属性

Pandas学习笔记_第8张图片

一个小练习:找到狗的名字的数量的最大值

import pandas as pd
df = pd.read_csv("data/dogName.csv")
df = df.sort_values(by="Count_AnimalName",ascending=False)
print(df.head(5))

Pandas学习笔记_第9张图片

取值

取行取列 []中写数组表示对行操作,[]中写字符串,表示对列操作

print(df[:20])
print(df["Row_Labels"])
print(df[:20]["Row_Labels"])

loc和iloc函数

loc函数 通过标签做获取行数据
iloc函数 通过位置获取行数据
Pandas学习笔记_第10张图片

loc
n.loc["a","Z"] #2
n.loc["a",:] #a行
n.loc[["a","c"],]#a行 c行
iloc
n.iloc[1]#取第一行
n.iloc[:,2]#取第二列
n.iloc[1:,2:] #1行下,2列后

缺失数据处理

pd.isnull(m)

Pandas学习笔记_第11张图片
删除NAN所在的行 all全部满足NAN any部分满足NAN inplace原地修改

m.dropna(axis=0,how="all",inplace = False)

填充数据

m.fillna(0)

Pandas学习笔记_第12张图片
NAN不部分填充中值数据

m.fillna(m.mean())

某一列NAN不部分填充中值数据

m["age"] = m["age"].fillna(m["age"].mean())

处理0表示缺失的0的数据

#处理0表示缺失的0的数据
m[m==0] = np.nan

你可能感兴趣的:(pandas,学习,python)