pandas入门

0.

pandas可以数据清洗 分析  他有使这些工作更快的数据结构和操作工具

pandas和数值计算工具Numpy和Scipy一起用  

            和分析库statsmodels和scikit-learn一起用

            和数据可视化库matplotlib一起用

pandas专门为处理表格和混杂数据设计的

Numpy是为了处理同意的数值数组数据

以上

import pandas as pd

 

1.

pandas有两个主要的数据结构

Series (系列)    和       DataFrame(数据帧)     有道翻译的。。

 

2.

Series是一种类似一维数组的对象

他由一组数据以及一组与之相关的数据标签组成 (一组np的数据类型和一个索引)

最简单的就是obj=pd.Series([一个列表])

然后obj  就弹出一个索引 左边是01234567,右边是分别的内容

obj=pd.Series([一个列表]),index=['a','b','c','d']

左边就变成abcd了

可以单独查看obj.index

obj['a']  就会弹出第一个对应值

要查询多个值 要把这些字符串放在一个列表里,[['a','b','c']]这叫索引列表

可以obj[obj>0]  这是对数值的查询 即对右边的查询

也可以obj*2、、np.exp[obj]

也可以看字符串是否在索引列表里 'a' in obj  返回True

这个和字典很像  也可以直接obj=pd.Series(字典名)

如果Series的index里单插入一个索引列表,不用原来字典的

那么会进行索引,原来字典里一对一的会正常摆出来 

index里没有的会把它视作键,但是值那里显示NaN(not a number)

用pd.isnull(obj)  和  pd.notnull(obj)

会把Series里左边索引是否有值得True或False显示出来

obj.isnull()  pd.notnull()  也可以做到

它牛逼就在于  可以自动对齐数据

两个obj相加 会把两个索引相同的值加在一起  只有一个索引的 就显示出来

Series对象和索引 都一个name属性

obj.name='pop'   obj.index.name='state'

这样在左上会显示出来state  最下边是name:pop

state可以原地修改   直接obj.index=[想要的index]

 

3.

DataFrame

他是一个表格型的数据结构  有一组有序的列  可以是不同的值类型

可以行列索引  都可以

可以当做是Series组成的字典

它里边的数据由一个或多个二维块存放  

建立这个是要传入一个等长列表或者Numpy数组组成的字典

然后最左边是索引 0123456  然后右边每列的表头是字典里的键

字典里的值需要是列表,然后对应每个索引的值就是表格里的值

data={'a':[11,22,33],

           'b':[44,55,66],

           'c':[77,88,99] }

frame=pd.DataFrame(data)

就显示一个表格 表头是abd  左列是012

可以只显示前5行 用  frame.head()

可以pd.DataFrame(data,columns=['b','c','a'])  给表头排序

可以pd.DataFrame(data,index=[‘一’,‘二’。。。])  给索引命名

没有的值也会NaN

frame['a']  就弹出一个Series  左边是索引 右边是'a'

frame.loc[索引]  就弹出一个  左边是表头  右边是该索引对应的数值  等于给转置了

frame[‘内容为空的表头’]= 。。。       空的可以赋值  可以是同一个值 可以是迭代器

frame['新的表头']=。。。   可以添加新的内容

del frame['某个表头名']  就删了这列了

嵌套的字典传给DataFrame时候  外层的键是表头!内层的键是索引!

frame.T  转置

pd.DataFrame(data,index=[‘一’,‘二’。。。]) 嵌套的字典会把索引里有的给带出来,没有索引的就显示NaN

DataFrame有 index  columns的name属性  可以一起显示

index的方法和属性

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值