pandas:jupyter notebook笔记(更新中)

简介:从数据中寻找真正有价值的信息叫数据分析,而这个jupyter nootbook正是数据分析的工具

 

一、Series和DataFrame的创建

Series(一维)的创建:

首先要导入相关包/库

form pandas import Series

创建Series:第一个参数是data用于传值,第二个参数是index(索引),如果没有传入index,会默认0-N递增。

params = Series(data=[ ],index=[ ])

也可以使用一个字典传进去创建一个Series

创建Series例子: 

 

 使用字典传值:

DataFrame(二维)的创建:

第一步导包:

from panads import DataFrame,Series

创建DataFrame:有三个参数,data,index(行索引),columns(列索引)

也可以使用字典创建一个DataFranme数据

创建DataFrame: 

 

 二、Series和DataFrame的操作

1.Series常用属性:

values:获取数据的值,返回list类型

index:获取索引的值,返回index类型,to_list转换成列表

items:获取每对索引和值,返回zip类型,使用list(series.items())转换成列表

 values:

 index:

 

 items:

 2.Series的取值:

使用索引下标取值,如series[['002';004']]
支持切片取值,如sel['a':'c'],使用切片时,使用单层括号

我们自定义的index值叫索引下标,没有设置index值得时候,会有一个默认的值叫位置索引 

 下标索引取值:

 切片取值:

 位置下标:

3.Series遍历:

for value in series:遍历直接拿到data数据
for value in series.keys():遍历并拿到index数据
for value in series.items():遍历并拿到每对索引和数据

 

 4.DataFrame属性:

df.index.tolist(),获取行索引列表
df.columns.tolist()),获取列索引列表
df.head(2)获取前两条,tail(2)获取后两条

 

 5.DataFrame的取值:

切片获取:多行里面的某几列如: df[1:3][['name','age']]
获取多列:df[['name','age']]
行标签索引筛选loc[ ],通过行位置索引筛选iloc[ ]

 切片索引:

 获取多列:

 loc:行在左列在右

 

 iloc:

 6.DataFrame遍历

iterrows():按行遍历,将DataFrame的每一行转化为(index, Series)对
iteritems():按列遍历,将DataFrame的每一列转化为(column, Series)对

按行: 

 

按列: 

 

 三、数据的读写 

1.数据写入

1.永久性保存,支持的文件格式有HTML、CSV. JSON、Excel
2. to. csv()的path_ or. buf参数:需要指定的文件的本地路径
3. to_ csv()的index参 数:设置为False就可以不存储DataFrame的行索引信息
4. to. csv()的encoding参数:设置"utf 8. sig"后解决文件打开后乱码

 

 2.数据的读取:

1.使用read, csv()、 read_ excel()等方法读取
2. read_ csv()第一个参数填文件的路径
3.默认会将文件中的第一行作为数据的列索引使用header参数设置(指定行位置索引、None)
4.一个Excel文件可以存多个表,一个csv只有一 个表.
5.读取某个表时,使用sheet_name指定(多个表时)

 四、数据的操作

1.删除数据:

1. df.drop()删除一行或者一列
2. axis共有0/1两个值,0表示删除行,1表示删除列,默认0
3. inplace:是否在当前df中执行此操作;
   True表示在原来数据基础上修改;
    False表示返回一个新的值,不修改原有数据

 2.空值的处理:

1. df.dropna()只要含有NaN的整行数据删掉
2.参数how='all',删除整行都是空值的数据
3. axis参数,axis=1表示列, axis=0表示行
4.参数thresh=n保留至少有n个非NaN数据的行

5.对空值填充,df.dillna(),括号内是要填充的数据,填地df.mean()使用平均值填充

 3.删除重复数据:

1. duplicated()检测数据是否为重复的数据行
2.通过DataFrame的duplicated( )去除重复行数据
3. f.drop. duplicates(['A'])只判断某一列数据中是否重复

 五、数据的合并,筛选,排序

合并pd.concat()方法:

1. pd.concat()沿一个轴将多个DataFrame对象连接在一起
2. axis参数值: 0表示行,1表示列
3. join参数: outer并 集处理,inner交集 处理

4.ignore_index = Ture重新整理一个新的index

 

 合并merge()方法:

4. merge()函数通过指定连接键拼接列数据
5. how:连接方式,有inner. left. right. outer, 默认为inner
6. on:指的是用于连接的列索引名称

 

 2.数据的筛选:

1. df['列名']> 100,返回每一行是否符合该条件的Bool类型的Series
2. df[bool1 & bool2],如果多个条件可以将判断条件之间使用逻辑运算符

 

 3.数据的排序

1. sort_jindex()是按照行索引进行排序
2. sort_values()可以指定具体列进行排序
3. sort _values的by参数:决定了是按数据中的哪一列进行排序
4. ascending=False:将数据按照从大到小的顺序排列,默认True,升序
5. inplace=True:用来控制是否直接对原始数据进行修改 

 

 六、对数据分组

1.数据的分组

1.使用groupby()方法进行分组
2. group.size()查看分组后每组的数量
3. group.groups查看分组情况
4. group.get_ group('F')根据分组后的名字选择分组数据

 对一列数据分组:

 2.对分组进行遍历:

1.使用for..in...可以对分组后的对象进行遍历
2.遍历时可获取到两个对象,分组后的名字和对应组的数据

 

 3.按多列进行分组

1.使用groupby()方法进行按多列分组
2.将多个列名放到列表中传给groupby做参数
3.分组后的数据会有多层索引,获取数据需要从外到里逐层获取

获取数据: 

 

 4.分组后统计

1. pandas提供了- - 些常用的统计函数
2. agg()聚合函数,传入sum()等系统提供的函数时需要以字符串形势,自定义的传入函数名

 

 

  • 9
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Jupyter是一个开源的交互式计算环境,可以用于数据分析、数据可视化、机器学习等多个领域。在进行数据整理时,Jupyter可以帮助我们更加方便地进行数据的清洗、转换、合并等操作。 以下是一些常用的Jupyter数据整理技巧: 1. 导入数据:使用pandas的read_csv()函数、read_excel()函数等可以方便地导入各种格式的数据。 2. 数据清洗:使用pandas的dropna()函数、fillna()函数等可以方便地清洗数据的缺失值、异常值等。 3. 数据转换:使用pandas的apply()函数、map()函数等可以方便地进行数据的转换,如将字符串类型转换为数值类型、将日期类型转换为时间戳等。 4. 数据合并:使用pandas的merge()函数、concat()函数等可以方便地进行数据的合并,如将多个数据集按照某个共同列进行合并、将多个数据集按照行或列进行合并等。 5. 数据分组:使用pandas的groupby()函数可以方便地将数据按照某个列进行分组,并进行统计、聚合等操作。 6. 数据透视表:使用pandas的pivot_table()函数可以方便地生成数据透视表,进行数据的交叉分析、统计等操作。 7. 数据可视化:使用matplotlib库、seaborn库等可以方便地进行数据可视化,将数据以图表的形式展示出来,更加直观地呈现数据的分布、趋势等。 总之,Jupyter作为一款强大的数据分析工具,可以帮助我们更加高效地进行数据整理和分析,提高工作效率和数据分析能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱康代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值