python pandas Series api方法
本文摘要总结了Pandas Series的核心功能与方法:
1)Series属性包括数据访问、索引、维度等基础属性;
2)索引和迭代方法提供多种数据访问方式;
3)日期时间属性(dt)支持时间数据操作;
4)字符串处理(str)提供丰富的文本处理功能;
5)分类数据(cat)和稀疏数据(sparse)有专用访问器;
6)绘图方法支持多种图表类型。这些方法全面覆盖了Series数据操作、处理和分析的主要需求。
1、Series属性
|
属性 |
说明 |
|
T |
返回转置,永远为Series自己 |
|
array |
返回Series的数据,PandasArray类型 |
|
attrs |
该数据集的全局属性字典。 |
|
axes |
以列表形式返回Series行标签 |
|
dtype |
返回数据的数据类型 |
|
dtypes |
返回数据的数据类型 |
|
empty |
返回Series是否为空:True为空,False不为空 |
|
flags |
获取与此pandas对象关联的属性 |
|
hasnans |
获取Series是否包含NaN,如果有任何NaN,则返回 True |
|
index |
返回Series的索引 |
|
is_monotonic_decreasing |
获取Series数据是否按降序排序,True为按降序排序 |
|
is_monotonic_increasing |
获取Series数据是否按升序排序,True为按升序排序 |
|
is_unique |
获取Series数据是否存在重复数据,True为数据都是唯一 |
|
name |
返回Series的名称 |
|
nbytes |
返回数据的字节数 |
|
ndim |
返回Series的维度,永远是1 |
|
shape |
返回数据形状的元组 |
|
size |
返回数据中元素的个数 |
|
values |
返回Series的数据,numpy.ndarray类型 |
|
memory_usage([index, deep]) |
返回Series的内存使用情况。 |
|
set_flags(*[, copy, ...]) |
返回具有更新标志的新对象。 |
2、Series索引和迭代
|
方法 |
描述 |
|
Series.get(key[, default]) |
获取给定键(例如:DataFrame列)对应的对象项。 |
|
Series.at |
访问行/列标签对应的单个值。 |
|
Series.iat |
按整数位置访问行/列对应的单个值。 |
|
Series.loc |
按标签或布尔数组访问一组行和列。 |
|
Series.iloc |
基于纯整数位置进行索引,以根据位置选择。 |
|
Series.iter() |
返回值的迭代器。 |
|
Series.items() |
惰性地遍历(索引,值)元组。 |
|
Series.keys() |
返回索引的别名。 |
|
Series.pop(item) |
返回项并从系列中删除。 |
|
Series.item() |
以Python标量的形式返回底层数据的第一个元素。 |
|
Series.xs(key[, axis, level, drop_level]) |
从Series/DataFrame返回交叉部分。 |
3、日期时间属性dt
Series.dt可用于访问系列的值作为日期时间,并返回多个属性。可以像Series.dt.这样访问这些属性。
3.1、日期时间属性
|
日期时间属性 |
描述 |
|
Series.dt.date |
返回python datetime.date对象的numpy数组。 |
|
Series.dt.time |
返回datetime.time对象的numpy数组。 |
|
Series.dt.timetz |
返回带时区的datetime.time对象的numpy数组。 |
|
Series.dt.year |
日期的年份。 |
|
Series.dt.month |
月份(1月=1,12月=12)。 |
|
Series.dt.day |
日期的日。 |
|
Series.dt.hour |
日期的小时。 |
|
Series.dt.minute |
日期的分钟。 |
|
Series.dt.second |
日期的秒。 |
|
Series.dt.microsecond |
日期的微秒。 |
|
Series.dt.nanosecond |
日期的纳秒。 |
|
Series.dt.dayofweek |
星期几(星期一=0,星期天=6)。 |
|
Series.dt.day_of_week |
星期几(星期一=0,星期天=6)。 |
|
Series.dt.weekday |
星期几(星期一=0,星期天=6)。 |
|
Series.dt.dayofyear |
一年中的第几天。 |
|
Series.dt.day_of_year |
一年中的第几天。 |
|
Series.dt.days_in_month |
一个月中的天数。 |
|
Series.dt.quarter |
季度。 |
|
Series.dt.is_month_start |
指示日期是否为月的第一天。 |
|
Series.dt.is_month_end |
指示日期是否为月的最后一天。 |
|
Series.dt.is_quarter_start |
指示日期是否为季度的第一天。 |
|
Series.dt.is_quarter_end |
指示日期是否为季度的最后一天。 |
|
Series.dt.is_year_start |
指示日期是否为年的第一天。 |
|
Series.dt.is_year_end |
指示日期是否为年的最后一天。 |
|
Series.dt.is_leap_year |
指示日期是否属于闰年。 |
|
Series.dt.daysinmonth |
一个月中的天数。 |
|
Series.dt.days_in_month |
一个月中的天数。 |
|
Series.dt.tz |
返回时区。 |
|
Series.dt.freq |
返回此PeriodArray的频率对象。 |
|
Series.dt.unit |
返回单位。 |
3.2、时间增量属性
Series.dt可用于访问系列的值作为时间增量,并返回多个属性。可以像Series.dt.这样访问这些属性。
|
时间增量属性 |
描述 |
|
Series.dt.qyear |
季度的年份。 |
|
Series.dt.start_time |
获取周期的开始时间戳。 |
|
Series.dt.end_time |
获取周期的结束时间戳。 |
|
Series.dt.days |
每个元素的天数。 |
|
Series.dt.seconds |
每个元素的秒数(>= 0且小于1天)。 |
|
Series.dt.microseconds |
每个元素的微秒数(>= 0且小于1秒)。 |
|
Series.dt.nanoseconds |
每个元素的纳秒数(>= 0且小于1微秒)。 |
|
Series.dt.components |
返回Timedeltas的组件的DataFrame。 |
|
Series.dt.unit |
单位。 |
4、字符串访问器str
Series.str可用于将系列的值作为字符串访问并应用多个方法。可以像Series.str.这样访问这些方法。
|
方法 |
描述 |
|
Series.str.capitalize() |
将Series/Index中的字符串转换为首字母大写。 |
|
Series.str.casefold() |
将Series/Index中的字符串转换为小写形式。 |
|
Series.str.cat([others, sep, na_rep, join]) |
使用给定的分隔符连接Series/Index中的字符串。 |
|
Series.str.center(width[, fillchar]) |
在Series/Index中的字符串两侧填充字符。 |
|
Series.str.contains(pat[, case, flags, na, ...]) |
测试每个字符串是否包含模式或正则表达式。 |
|
Series.str.count(pat[, flags]) |
计算每个字符串中模式出现的次数。 |
|
Series.str.decode(encoding[, errors]) |
使用指定的编码对Series/Index中的字符字符串进行解码。 |
|
Series.str.encode(encoding[, errors]) |
使用指定的编码对Series/Index中的字符字符串进行编码。 |
|
Series.str.endswith(pat[, na]) |
测试每个字符串元素的末尾是否与模式匹配。 |
|
Series.str.extract(pat[, flags, expand]) |
提取在正则表达式模式中捕获的列作为DataFrame。 |
|
Series.str.extractall(pat[, flags]) |
将正则表达式模式中捕获的列提取为DataFrame。 |
|
Series.str.find(sub[, start, end]) |
返回Series/Index中每个字符串的最低索引。 |
|
Series.str.findall(pat[, flags]) |
在Series/Index中查找模式或正则表达式的所有出现。 |
|
Series.str.fullmatch(pat[, case, flags, na]) |
确定每个字符串是否完全与正则表达式匹配。 |
|
Series.str.get(i) |
提取指定位置或键的组件中的元素。 |
|
Series.str.index(sub[, start, end]) |
返回Series/Index中每个字符串的最低索引。 |
|
Series.str.join(sep) |
使用传递的分隔符连接Series/Index中的字符串。 |
|
Series.str.len() |
计算Series/Index中每个元素的长度。 |
|
Series.str.ljust(width[, fillchar]) |
将Series/Index中的字符串左对齐并填充字符。 |
|
Series.str.lower() |
将Series/Index中的字符串转换为小写形式。 |
|
Series.str.lstrip([to_strip]) |
删除Series/Index中字符串的前导字符。 |
|
Series.str.match(pat[, case, flags, na]) |
确定每个字符串是否以正则表达式匹配。 |
|
Series.str.normalize(form) |
返回Series/Index中字符串的Unicode规范形式。 |
|
Series.str.pad(width[, side, fillchar]) |
将Series/Index中的字符串填充到指定宽度。 |
|
Series.str.partition([sep, expand]) |
将字符串在第一次出现的分隔符处拆分为三个部分。 |
|
Series.str.removeprefix(prefix) |
从对象系列中删除前缀。 |
|
Series.str.removesuffix(suffix) |
从对象系列中删除后缀。 |
|
Series.str.repeat(repeats) |
在Series或Index中重复每个字符串。 |
|
Series.str.replace(pat, repl[, n, case, ...]) |
用给定的值替换Series/Index中的模式/正则表达式的每个出现。 |
|
Series.str.rfind(sub[, start, end]) |
返回Series/Index中每个字符串的最高索引。 |
|
Series.str.rindex(sub[, start, end]) |
返回Series/Index中每个字符串的最高索引。 |
|
Series.str.rjust(width[, fillchar]) |
将Series/Index中的字符串右对齐并填充字符。 |
|
Series.str.rpartition([sep, expand]) |
将字符串在最后一次出现的分隔符处拆分为三个部分。 |
|
Series.str.rstrip([to_strip]) |
删除Series/Index中字符串的尾随字符。 |
|
Series.str.slice([start, stop, step]) |
从Series或Index中的每个元素中切片子字符串。与Series.str[start:stop]等价 |
|
Series.str.slice_replace([start, stop, repl]) |
使用另一个值替换字符串的位置切片。 |
|
Series.str.split([pat, n, expand, regex]) |
围绕给定的分隔符/定界符拆分字符串。 |
|
Series.str.rsplit([pat, n, expand]) |
围绕给定的分隔符/定界符拆分字符串。 |
|
Series.str.startswith(pat[, na]) |
测试每个字符串元素的开头是否与模式匹配。 |
|
Series.str.strip([to_strip]) |
删除Series/Index中字符串的前导和尾随字符。 |
|
Series.str.swapcase() |
将Series/Index中的字符串大小写互换。 |
|
Series.str.title() |
将Series/Index中的字符串转换为标题形式。 |
|
Series.str.translate(table) |
通过给定的映射表将字符串中的所有字符映射到新的值。 |
|
Series.str.upper() |
将Series/Index中的字符串转换为大写形式。 |
|
Series.str.wrap(width, **kwargs) |
将Series/Index中的字符串包装到指定的行宽。 |
|
Series.str.zfill(width) |
在Series/Index中的字符串左侧填充'0'字符。 |
5、分类访问器
分类数据类型特定的方法和属性可在Series.cat访问器下使用。
|
分类访问器 |
描述 |
|
Series.cat.categories |
分类的类别。 |
|
Series.cat.ordered |
类别是否具有排序关系。 |
|
Series.cat.codes |
返回代码和索引的Series。 |
6、稀疏访问器
Sparse访问器提供了针对Sparse-dtype的特定方法和属性。
|
属性名 |
描述 |
|
Series.sparse.npoints |
非填充值点的数量 |
|
Series.sparse.density |
非填充值点的百分比(小数形式) |
|
Series.sparse.fill_value |
数据中的填充值不会被存储 |
|
Series.sparse.sp_values |
包含非填充值的ndarray |
|
Series.sparse.from_coo |
从scipy.sparse.coo_matrix创建具有稀疏值的Series |
|
Series.sparse.to_coo |
从具有MultiIndex的Series创建一个scipy.sparse.coo_matrix |
7、绘图方法
|
方法 |
描述 |
|
Series.plot |
为特定绘图方法的可调用方法和命名空间属性,形式为Series.plot. |
|
Series.plot.area |
绘制堆叠面积图 |
|
Series.plot.bar |
绘制垂直条形图 |
|
Series.plot.barh |
绘制水平条形图 |
|
Series.plot.box |
绘制DataFrame列的箱线图 |
|
Series.plot.density |
使用高斯核生成核密度估计图 |
|
Series.plot.hist |
绘制DataFrame列的直方图 |
|
Series.plot.kde |
使用高斯核生成核密度估计图 |
|
Series.plot.line |
将Series或DataFrame绘制为折线图 |
|
Series.plot.pie |
生成饼图 |
转载地址:
更多推荐

所有评论(0)