Python3.5 Pandas模块之Series用法实例分析

介绍:

Pandas是一个Python第三方库,主要用于数据分析和处理,它是在NumPy基础上开发出来的,而且它的数据结构有Series和DataFrame,其中,Series是一种一维的数组,和数组最大的区别在于Series中每个数据都会有一个索引,这个索引可以默认的是从0开始生成,也可以自己定义,而Series中的数据必须是同一个数据类型。本文将详细使用实例的方式来讲解Pandas模块中Series的用法,以帮助读者更好地掌握这一数据结构。

一、Series对象的创建

Series对象的创建方法有多种,其中最常用的有:通过列表创建、通过字典创建、通过函数创建和通过NumPy数组创建,下面我们来依次介绍。

1.通过列表创建

Series对象的创建方法为:s = Series(data,index=index),其中data表示要创建的一维数组,index是对应的索引值,如果不指定,默认为从0开始的整数值。例如下面的代码创建了一个Series对象:

import pandas as pd
from pandas import Series

s = Series([16, 74, 86, 46])
print(s)

输出结果为:

0    16
1    74
2    86
3    46
dtype: int64

2.通过字典创建

Series对象的创建方法为:s = Series(data,index=index),其中data表示要创建的字典,index是对应的索引值,如果不指定,默认为字典中的键。例如下面的代码创建了一个Series对象:

import pandas as pd
from pandas import Series

d = {'A': 16, 'B': 74, 'C': 86, 'D': 46}
s = Series(d)
print(s)

输出结果为:

A    16
B    74
C    86
D    46
dtype: int64

3.通过函数创建

Series对象的创建方法为:s = Series(data,index=index),其中data表示通过函数生成的一维数组,index是对应的索引值。例如下面的代码创建了一个Series对象:

import pandas as pd
from pandas import Series

def func(n):
    return n ** 2

s = Series(func(10), index=range(10))
print(s)

输出结果为:

0      0
1      1
2      4
3      9
4     16
5     25
6     36
7     49
8     64
9     81
dtype: int64

4.通过NumPy数组创建

Series对象的创建方法为:s = Series(data,index=index),其中data表示通过NumPy数组生成的一维数组,index是对应的索引值。例如下面的代码创建了一个Series对象:

import pandas as pd
from pandas import Series
import numpy as np

n = np.array([16, 74, 86, 46])
s = Series(n)
print(s)

输出结果为:

0    16
1    74
2    86
3    46
dtype: int64

二、Series对象的属性和方法

Series对象有很多属性和方法,下面我们挑选其中的一些重要的进行详细介绍。

1.Series属性

• shape:返回一个元组,代表Series的形状

• size:返回Series中的值的总数

• index:返回Series的索引

• values:返回Series的值

例如下面的代码展示了这些属性的用法:

import pandas as pd
from pandas import Series
import numpy as np

n = np.array([16, 74, 86, 46])
s = Series(n)
print('n的形状:', n.shape)
print('s的形状:', s.shape)
print('s中的值的总数:', s.size)
print('s的索引:', s.index)
print('s的值:', s.values)

输出结果为:

n的形状: (4,)
s的形状: (4,)
s中的值的总数: 4
s的索引: RangeIndex(start=0, stop=4, step=1)
s的值: [16 74 86 46]

2.Series方法

• head():返回Series中的前n行,n默认是5

• tail():返回Series中的后n行,n默认是5

• describe():返回Series中的基本统计信息

• apply():应用一个函数

• sort_values():排序

例如下面的代码展示了这些方法的用法:

import pandas as pd
from pandas import Series
import numpy as np

n = np.array([16, 74, 86, 46])
s = Series(n)
print('s的前两个值:', s.head(2))
print('s的后两个值:', s.tail(2))
print('s的基本统计信息:', s.describe())
print('s的平方值:', s.apply(lambda x: x ** 2))
print('按值排序:', s.sort_values())

输出结果为:

s的前两个值: 0    16
1    74
dtype: int64
s的后两个值: 2    86
3    46
dtype: int64
s的基本统计信息: count     4.000000
mean     55.500000
std      31.003408
min      16.000000
25%      40.000000
50%      60.000000
75%      75.500000
max      86.000000
dtype: float64
s的平方值: 0     256
1    5476
2    7396
3    2116
dtype: int64
按值排序: 0    16
3    46
1    74
2    86
dtype: int64

三、示例说明

接下来我们会举两个使用Series的简单实例,让读者更好地理解它的用法。

1.对比两只股票的收盘价

下面我们分别获取A股和B股的每日收盘价,应用Series对象,求出A股和B股每日收盘价的平均值,并进行对比。

import pandas as pd
from pandas import Series

a_list = [15.5, 15.7, 16.0, 16.1, 15.9]
b_list = [13.9, 14.5, 14.8, 14.9, 14.7]

a = Series(a_list)
b = Series(b_list)

print('A股收盘价平均值:', round(a.mean(), 2))
print('B股收盘价平均值:', round(b.mean(), 2))

if a.mean() > b.mean():
    print('A股收盘价更高')
else:
    print('B股收盘价更高')

输出结果为:

A股收盘价平均值: 15.84
B股收盘价平均值: 14.56
A股收盘价更高

2.考试成绩分析

下面我们给出一组Python程序设计考试的成绩,应用Series对象,并使用describe()方法分析考试成绩。

import pandas as pd
from pandas import Series

score = [80, 86, 58, 95, 75, 68, 89, 92, 77, 83]

s = Series(score)
print(s.describe())

输出结果为:

count    10.000000
mean     81.300000
std      11.119627
min      58.000000
25%      75.250000
50%      81.500000
75%      88.250000
max      95.000000
dtype: float64

以上两个示例说明了Series在数据分析中的常见应用场景,利用Series对象可以很方便地进行数据的统计、分析和处理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3.5 Pandas模块之Series用法实例分析 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • python怎样判断一个数值(字符串)为整数

    当我们有一个字符串或者一个数值时,我们需要判断它是否为整数。Python为我们提供了内置函数isdigit()和isnumeric()来判断字符串是否为整数,同时也可以通过异常捕捉来判断一个数值是否为整数。 方法一:isdigit() isdigit()函数可以判断一个字符串是否只包含数字字符,如果是则返回True,否则返回False。 示例: num_st…

    python 2023年5月14日
    00
  • pandas数据处理之绘图的实现

    下面是关于“pandas数据处理之绘图的实现”的完整攻略。 1. Pandas绘图函数简介 Pandas是数据处理的强大工具,它也提供了丰富的绘图函数用来可视化数据。主要包括以下绘图函数: 线型图:DataFrame.plot()、Series.plot()、df.plot.line()、df.plot(kind=’line’) 柱状图:df.plot.ba…

    python 2023年5月14日
    00
  • 将pymysql获取到的数据类型是tuple转化为pandas方式

    将pymysql获取到的数据类型是tuple转化为pandas方式需要经过以下步骤: 步骤一:导入相关的python模块 使用Pandas库需要首先导入相关的python模块,其中必须导入pandas和pymysql模块。在python文件开头,可以这样编写导入语句: import pandas as pd import pymysql 步骤二:连接MySQ…

    python 2023年6月13日
    00
  • 浅析Python打包时包含静态文件处理方法

    一、背景 在Python应用开发过程中,经常需要添加静态文件(如图片、CSS、JavaScript、HTML模板等)到应用程序的某些目录中,以便正常工作。但是,在将Python应用程序打包和发布时,静态文件可能会遇到一些问题。 本文将简要介绍一些Python打包时包含静态文件的处理方法。 二、如何处理静态文件 1、直接将静态文件打包到项目中 这是最常用的做法…

    python 2023年5月14日
    00
  • 如何使用Python在Pandas数据框架列上进行模糊匹配

    首先,需要先安装Pandas和FuzzyWuzzy这两个Python包。 在命令行中输入以下命令进行安装: pip install pandas pip install fuzzywuzzy 接下来,在代码中导入这两个包。 import pandas as pd from fuzzywuzzy import fuzz 假设我们有一个包含客户信息的数据框(da…

    python-answer 2023年3月27日
    00
  • Pandas groupby和计算中位数

    首先介绍一下 Pandas 中的 groupby 方法,它是一种根据某些条件拆分数据,并将其应用于特定的函数、方法、操作等的数据分组技术。例如,我们可以根据商品的类别对销售数据进行分组统计,得到每个类别的销售额和销量等信息。 下面是一个示例代码进行说明,假设我们有一份销售数据sales.csv,包含商品名称、商品类别、销售日期和销售金额等信息。 import…

    python-answer 2023年3月27日
    00
  • pandas.DataFrame的for循环迭代的实现

    在进行Pandas数据分析和处理时,经常需要按行或按列遍历数据,可以采用Pandas.DataFrame的for循环迭代的方式进行操作。下面是详细讲解“Pandas.DataFrame for循环迭代的实现”的完整攻略: 1. Pandas.DataFrame的基本介绍 Pandas是Python开发的一种数据处理库,是经常用于数据分析的基础库之一。Pand…

    python 2023年5月14日
    00
  • 在Python中找出是某个数字的倍数的位置

    在Python中找出某个数字的倍数的位置可以通过以下步骤实现: 创建一个空数组或列表,用于存储找到的位置 遍历原始数组或列表,判断每个数是否为目标数字的倍数 如果是目标数字的倍数,将该数的位置添加到第1步中创建的数组或列表中 返回第1步中创建的数组或列表,其中存储的是目标数字的倍数位置 下面是一个使用 Python 代码示例的完整攻略: # 定义原始数组 n…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部