文章目录
原生风格
切片单列
切片多列
切片行
pandas 风格切片
df.loc["indexes", "columns"] 基于行、列的名称切片
df.iloc["indexes", "columns"] 基于行、列的索引切片
每个人都知道 Python 是一种高效、简洁、优雅的语言。然而 Python 也有很多坑,现在老宅开一个新系列,分享老宅在学习和实践中总结的经验和教训,不定期分享。
第一个经验就是要吐槽 总结数据框的切片。Python 有很多第三方的模块(比如 pandas 这样的数据科学神器),对提升 Python 的实用性贡献很大。然而模块多就有一个副作用:语法的不一致性。老宅在学习 pandas 的过程中就被数据框切片的复杂语法搞得挠头。
本文参考了 http://chris.friedline.net/2015-12-15-rutgers/lessons/python2/02-index-slice-subset.html,特此致谢。
数据框的切片,是在列表的切片的基础上发展起来的。不过列表是一维,数据框是二维,因此数据框切片有自己独特的方法。所以数据框的切片有两个风格:原生风格和 pandas 风格(这两个风格是老宅自己总结的…)。在总结以前,我们先构建数据集:
>>> import pandas as pd
>>> from sklearn.datasets import load_iris # 载入 iris 数据集模块
>>> iris = pd.DataFrame(load_iris()["data"]) # 载入