本文概述
- 创建系列
- 通过位置访问系列数据
- 系列功能
- 数据:可以是任何列表, 字典或标量值。
- index:索引的值应唯一且可哈希。它必须与数据长度相同。如果我们不传递任何索引, 则将使用默认的np.arrange(n)。
- dtype:是指系列的数据类型。
- 复制:用于复制数据。
- 创建一个空系列
- 使用输入创建系列。
我们可以轻松地在Pandas中创建一个空系列, 这意味着它将没有任何价值。
用于创建空序列的语法:
<
series object>
= pandas.Series()
以下示例创建了一个空系列类型对象, 该对象没有值, 并且具有默认数据类型, 即float64。
例子
import pandas as pdx = pd.Series()print (x)
输出
Series([], dtype: float64)
使用输入创建系列:
我们可以使用各种输入来创建系列:
- Array
- 辞典
- 标量值
【Python Pandas系列series用法详细介绍】在创建系列之前, 首先, 我们必须导入numpy模块, 然后在程序中使用array()函数。如果数据是ndarray, 则传递的索引必须具有相同的长度。
如果我们不传递索引, 则默认情况下将传递range(n)的索引, 其中n定义数组的长度, 即[0, 1, 2, … . range(len(array))- 1]。
例子
import pandas as pdimport numpy as npinfo = np.array(['P', 'a', 'n', 'd', 'a', 's'])a = pd.Series(info)print(a)
输出
0P1a2n3d4a5sdtype: object
从字典创建系列
我们也可以根据字典创建系列。如果将字典对象作为输入传递而未指定索引, 则按排序顺序获取字典键以构造索引。
如果传递了索引, 则将从字典中提取与索引中特定标签相对应的值。
#import the pandas library import pandas as pdimport numpy as npinfo = {'x' : 0., 'y' : 1., 'z' : 2.}a = pd.Series(info)print (a)
输出
x0.0y1.0z2.0dtype: float64
使用标量创建系列:
如果采用标量值, 则必须提供索引。标量值将被重复以匹配索引的长度。
#import pandas library import pandas as pdimport numpy as npx = pd.Series(4, index=[0, 1, 2, 3])print (x)
输出
04142434dtype: int64
通过位置访问系列数据创建Series类型对象后, 就可以访问其索引, 数据, 甚至单个元素。
与ndarray中的数据类似, 可以访问Series中的数据。
import pandas as pdx = pd.Series([1, 2, 3], index = ['a', 'b', 'c'])#retrieve the first elementprint (x[0])
输出
1
系列对象属性
Series属性定义为与Series对象有关的任何信息, 例如大小, 数据类型。等。以下是一些可用于获取有关Series对象的信息的属性:
Attributes | Description |
---|---|
Series.index | 定义系列的索引。 |
系列形状 | 它返回数据形状的元组。 |
Series.dtype | 它返回数据的数据类型。 |
Series.size | 它返回数据的大小。 |
空系列 | 如果Series对象为空, 则返回True, 否则返回false。 |
Series.hasnans | 如果有任何NaN值, 则返回True, 否则返回false。 |
Series.nbytes | 它返回数据中的字节数。 |
Series.ndim | 它返回数据中的维数。 |
Series.itemsize | 它返回item数据类型的大小。 |
我们可以使用属性index和values检索现有Seri??es对象的索引数组和数据数组。
import numpy as np import pandas as pd x=pd.Series(data=http://www.srcmini.com/[2, 4, 6, 8]) y=pd.Series(data=[11.2, 18.6, 22.5], index=['a', 'b', 'c']) print(x.index) print(x.values) print(y.index) print(y.values)
输出
RangeIndex(start=0, stop=4, step=1)[2 4 6 8]Index(['a', 'b', 'c'], dtype='object')[11.2 18.6 22.5]
检索类型(dtype)和类型大小(itemsize)
可以将属性dtype与Series对象一起用作< objectname> dtype来检索系列对象的单个元素的数据类型, 可以使用itemsize属性显示分配给每个数据项的字节数。
import numpy as np import pandas as pd a=pd.Series(data=http://www.srcmini.com/[1, 2, 3, 4]) b=pd.Series(data=[4.9, 8.2, 5.6], index=['x', 'y', 'z']) print(a.dtype) print(a.itemsize)print(b.dtype) print(b.itemsize)
输出
int648float648
检索形状
Series对象的形状定义元素的总数, 包括缺失值或空值(NaN)。
import numpy as np import pandas as pd a=pd.Series(data=http://www.srcmini.com/[1, 2, 3, 4]) b=pd.Series(data=[4.9, 8.2, 5.6], index=['x', 'y', 'z']) print(a.shape) print(b.shape)
输出
(4, )(3, )
检索尺寸, 大小和字节数:
import numpy as np import pandas as pd a=pd.Series(data=http://www.srcmini.com/[1, 2, 3, 4]) b=pd.Series(data=[4.9, 8.2, 5.6], index=['x', 'y', 'z']) print(a.ndim, b.ndim) print(a.size, b.size) print(a.nbytes, b.nbytes)
输出
1 14 332 24
检查NaN的空性和存在性
要检查Series对象是否为空, 可以使用empty属性。同样, 要检查系列对象是否包含某些NaN值, 可以使用hasans属性。
例子
import numpy as np import pandas as pd a=pd.Series(data=http://www.srcmini.com/[1, 2, 3, np.NaN]) b=pd.Series(data=[4.9, 8.2, 5.6], index=['x', 'y', 'z']) c=pd.Series() print(a.empty, b.empty, c.empty) print(a.hasnans, b.hasnans, c.hasnans) print(len(a), len(b)) print(a.count( ), b.count( ))
输出
FalseFalseTrueTrueFalseFalse4333
系列功能系列中使用的一些功能如下:
Functions | Description |
---|---|
PandasSeries.map() | 映射两个具有公共列的系列的值。 |
PandasSeries.std() | 计算给定数字集, DataFrame, 列和行的标准偏差。 |
PandasSeries.to_frame() | 将系列对象转换为数据框。 |
PandasSeries.value_counts() | 返回一个包含唯一值计数的Series。 |
推荐阅读
- Python Pandas教程介绍
- ELINK编程器典型场景之多APP文件下载
- Android 使用 NYTimes Stores 缓存 network request
- Hbuilder连接安卓模拟器,调试app
- MEF and AppDomainz
- 支付宝安卓机型支付时,只有第一次可以唤醒支付窗的bug(有支付宝交易号)
- Android studio调试时遇见Install Repository and sync project的问题
- Choose unique values for the 'webAppRootKey' context-param in your web.xml files! 错误的解决(代码片段
- [转]mac上安装android sdk