Pandas——Series操作【建议收藏】

pandas——Series操作

作者:AOAIYI
创作不易,觉得文章不错或能帮助到你学习,可以点赞收藏评论哦


文章目录

  • pandas——Series操作
  • 一、实验目的
  • 二、实验原理
  • 三、实验环境
  • 四、实验内容
  • 五、实验步骤
    • 1.创建Series
    • 2.从具体位置的Series中访问数据
    • 3.使用标签检索数据(索引)
    • 4.简单运算
    • 5.Series的自动对齐
    • 6.Series增删改


一、实验目的

熟练掌握pandas中Series的创建、查询和简单运算方法

二、实验原理

Series的定义:Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。

Series对象本质上是一个NumPy的数组,因此NumPy的数组处理函数可以直接对Series进行处理。但是Series除了可以使用位置作为下标存取元素之外,还可以使用标签下标存取元素,这一点和字典相似。每个Series对象实际上都由两个数组组成:

index: 它是从NumPy数组继承的Index对象,保存标签信息。

values: 保存值的NumPy数组。

注意三点:

  1. Series是一种类似于一维数组(数组:ndarray)的对象

  2. 它的数据类型没有限制(各种NumPy数据类型)

  3. 它有索引,把索引当做数据的标签(key)看待,这样就类似字典了(只是类似,实质上是数组)

4.Series同时具有数组和字典的功能,因此它也支持一些字典的方法

三、实验环境

Python 3.6.1以上

jupyter

四、实验内容

练习Series的创建、查看数据与简单运算操作。

五、实验步骤

1.创建Series

1.创建一个空的Series。

import pandas as pd  
s=pd.Series()  
print(s)  

Pandas——Series操作【建议收藏】_第1张图片

2.从ndarray创建一个Series,并规定索引为[100,101,102,103]。

import pandas as pd  
import numpy as np  
data=np.array(['a','b','c','d'])  
s=pd.Series(data,index=[100,101,102,103])  
print(s) 

Pandas——Series操作【建议收藏】_第2张图片

3.从字典创建一个Series,字典键用于构建索引。

import pandas as pd  
data={'a':0,'b':1,'c':2,'d':3}  
s=pd.Series(data)  
print(s)

Pandas——Series操作【建议收藏】_第3张图片

4.从标量创建一个Series,此时,必须提供索引,重复值以匹配索引的长度。

import pandas as pd  
s=pd.Series(5,index=[0,1,2,3])  
print(s) 

Pandas——Series操作【建议收藏】_第4张图片

2.从具体位置的Series中访问数据

1.检索Series中的第一个元素。

import pandas as pd   
s=pd.Series([1,2,3,4,5],index=['a','b','c','d','e'])  
print(s[0])  

Pandas——Series操作【建议收藏】_第5张图片

2.检索Series中的前三个元素。

import pandas as pd   
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
print(s[:3])  

Pandas——Series操作【建议收藏】_第6张图片

3.检索Series中最后三个元素。

import pandas as pd  
s= pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
print(s[-3:])  

Pandas——Series操作【建议收藏】_第7张图片

3.使用标签检索数据(索引)

使用标签检索数据(索引):一个Series就像一个固定大小的字典,可以通过索引标签获取和设置值。

1.使用索引标签检索单个元素。

import pandas as pd  
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
print(s['a'])  

在这里插入图片描述

2.使用索引标签列表检索多个元素。

import pandas as pd  
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
print(['a','b','c','d'])  

Pandas——Series操作【建议收藏】_第8张图片

3.如果不包含标签,检索会出现异常。

import pandas as pd  
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
print(s['f'])  

Pandas——Series操作【建议收藏】_第9张图片

4.简单运算

1.在pandas的Series中,会保留NumPy的数组操作(用布尔数组过滤数据,标量乘法,以及使用数学函数),并同时保持引用的使用

import numpy as np  
import pandas as pd  
ser2 = pd.Series(range(4),index = ["a","b","c","d"])  
ser2[ser2 > 2]  
ser2 * 2  
np.exp(ser2)  

Pandas——Series操作【建议收藏】_第10张图片

5.Series的自动对齐

Series的一个重要功能就是自动对齐(不明觉厉),看看例子就明白了。 差不多就是不同Series对象运算的时候根据其索引进行匹配计算。

1.创建两个Series名为ser3与ser4.

import pandas as pd  
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}  
ser3 = pd.Series(sdata)  
states = ['California', 'Ohio', 'Oregon', 'Texas']  
ser4 = pd.Series(sdata,index = states)  
print(ser3)  
print(ser4)  
ser3+ser4 

Pandas——Series操作【建议收藏】_第11张图片

6.Series增删改

1.增:Series的add()方法是加法计算不是增加Series元素用的,使用append连接其他Series。

import pandas as pd  
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}  
ser3 = pd.Series(sdata)  
states = ['California', 'Ohio', 'Oregon', 'Texas']  
ser4 = pd.Series(sdata,index = states)  
print(ser3)  
print(ser4)  
ser3.append(ser4)  

Pandas——Series操作【建议收藏】_第12张图片

2.删:Series的drop()方法可以对Series进行删除操作,返回一个被删除后的Series,原来的Series不改变。

import pandas as pd  
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
s.drop('a')  
s  

Pandas——Series操作【建议收藏】_第13张图片

3.改:通过索引的方式查找到某个元素,然后通过“=”赋予新的值。

import pandas as pd  
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])  
s['a']=5  
print(s)  

Pandas——Series操作【建议收藏】_第14张图片


你可能感兴趣的:(Pandas,pandas,python,numpy,开发语言)