Pandas学习
1/27 这周主要学习了pandas。它是Python用于数据分析的主要模块。
内容确实比较多,也可能是自己不怎么熟悉,所以即使看了两三遍视频依然还是有点蒙,在做题的时候完全想不到做法。
先来看看本周一些小问题。
1 .操作中不小心误删除代码,通过Ctrl+z恢复。
2.data = pd.DataFrame(np.arange(16).reshape((4,4)),index = ["Ohio","Colorado","Utah","New York"],columns= ["one","two","three","four"])
由于没有输入arrange()的参数报错,粗心,是函数一般都要有参数,括号是必须的。
3.data.loc[:"Utah","two"]寻找索引在Utah之前,列名字是‘two’的值。
4.loc可以用数字选择索引是字母的行。
eg:df.loc[df.index[[3,4,8]],["animal","age"]]
5. 每一章的代码最好放在一个Ipython文件里面,如果出现pd未定义,import pandas as pd需要重新导入。
基础知识回顾:
data={'animal': ['cat','cat','snake','dog','dog','cat','snake','cat','dog','dog'],'age': [2.5,3,0.5,np.nan,5,2,4.5,np.nan,7,3],'visits': [1,3,2,3,2,3,1,1,2,1],'priority': ['yes','yes','no','yes','no','no','no','yes','no','no']}labels=['a','b','c','d','e','f','g','h','i','j']
1.创建DataFrame
df = pd.DataFrame(data,index = labels)
2.基本信息展示
df.info()
3.返回前3行
df.head(3)
4.选取animal和age 行
df[["animal","age"]]
5.选取列名为“animal”,“age”的3,4,8行。
df.loc[df.index[[3,4,8]],"animal","age"]
6.选取visit>3的行
df[df["visits"]>3]
7.age列的值缺失的行
df[df["age"].isnull()]
8animal 是cat,age<3的行
df[(df["animal"]=="cat")&(df["age"]<3)]
9.行f的age值改成1.5
df.loc["f","age"]=1.5
10.计算visits列的和sum
df[visits].sum()
11.添加一个索引为k的行并删除
df.loc['k'] = [5.5, 'dog', 'no', 2]
del df.drop("k")
12.各种类型的动物数量
df["animal"].value_counts()
未完待续。
书籍第一版还有ix的用法,视频中提过主要还是用loc.
聚集函数那块的内容还要继续。