学霸在知识的海洋里开快艇,我在知识的海洋里喂鲨鱼
为了不被喂鲨鱼,我又来更新学习了,补充一点pandas的知识点
Python之pandas(二)
Python之pandas
想要多学习点知识的可以去看看,不想就算了(doge)
- 前言
- 系列文章
- 环境:jupyter Notebook(Anaconda)
- 一、Series的索引 *** 作
- 1.创建数组
- 2.使用索引位置来获取数据
- 3. 使用索引名称来获取数据
- 4. 使用位置索引进行切片
- 5. 使用索引名称进行切片
- 6. 通过不连续位置索引获取数据,(==两个中括号==)
- 7. 通过不连续索引名称获取数据
- 8. 布尔型索引,返回与模板中True位置对应的元素
- 9.通过数据类型索引获取数据集
- 二、DataFrame的索引 *** 作
- 1. 创建数组
- 2. 通过列索引进行切片
- 3. 查看数据类型
- 4. 使用不连续列索引名称获取数据
- 5. 使用行索引进行切片
- 6. 使用列索引和行索引进行切片
- 三、索引访问数组
- 1.创建数组arr
- 2. 使用DataFrame添加索引名称变为二维表
- 3. 按标签进行切片选取数据
- 4. 按行索引进行切片选取数据
- 5. 按行索引和列索引进行切片选取数据
import pandas as pd
ser_obj=pd.Series([1,2,3,4,5],index=['a','b','c','d','e'])
ser_obj
2.使用索引位置来获取数据
ser_obj[3] #使用索引位置来获取数据
3. 使用索引名称来获取数据
ser_obj['c'] #使用索引名称来获取数据
4. 使用位置索引进行切片
ser_obj[2:4] #使用位置索引进行切片
5. 使用索引名称进行切片
ser_obj['c':'e'] #使用索引名称进行切片
6. 通过不连续位置索引获取数据,(两个中括号)
ser_obj[[0,2,4]] #通过不连续位置索引获取数据集
7. 通过不连续索引名称获取数据
ser_obj[['a','c','d']] #通过不连续索引名称获取数据集
8. 布尔型索引,返回与模板中True位置对应的元素
ser_bool=ser_obj>2 #布尔型索引,返回与模板中True位置对应的元素
ser_bool
9.通过数据类型索引获取数据集
ser_obj[ser_bool]
二、DataFrame的索引 *** 作
DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表。
或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matlab也可以用cell存放 多类型数据)
DataFrame的单元格可以存放数值、字符串等,这和excel表很像
同时DataFrame可以设置列名columns与行名index,可以通过像matlab一样通过位置获取数据也可以通过列名和行名定位,具体方法在后面细说。
1. 创建数组
import numpy as np
arr=np.arange(12).reshape(3,4)
df_obj=pd.DataFrame(arr,columns=['a','b','c','d'])
df_obj
2. 通过列索引进行切片
df_obj['b'] #通过列索引进行切片
3. 查看数据类型
type(df_obj['b']) #查看数据类型
4. 使用不连续列索引名称获取数据
df_obj[['b','d']] #使用不连续列索引名称获取数据
5. 使用行索引进行切片
df_obj[:2] #使用行索引进行切片(切片的意思就是切一片嘛,一片数据)
6. 使用列索引和行索引进行切片
df_obj[:3][['b','d']] #使用列索引和行索引进行切片
三、索引访问数组
loc:基于标签索引(索引名称,如a,b),用于按标签选取数据。当执行切片 *** 作时,既包含起始
索引,也包含结束索引
iloc:基于位置索引(整数索引,从0到length-1),用于按位置选取数据。当执行切片 *** 作时,
只包含起始索引,不包含结束索引。
iloc方法主要使用整数来索引数据,而不能使用字符标签来索引数据。而loc方法恰恰相反,它只能
使用字符标签来索引数据,而不能使用整数来索引数据
1.创建数组arr
import numpy as np
import pandas as pd
arr=np.arange(16).reshape(4,4)
arr
2. 使用DataFrame添加索引名称变为二维表
dataframe_obj=pd.DataFrame(arr,columns=['a','b','c','d'])
dataframe_obj
3. 按标签进行切片选取数据
注意第二个中括号前有个逗号
dataframe_obj.loc[:,['c','a']]
4. 按行索引进行切片选取数据
dataframe_obj.iloc[:,[2,0]]
5. 按行索引和列索引进行切片选取数据
dataframe_obj.loc[1:2,['b','c']]
觉得写的不错的,记得三连哈~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)