pandas小提示(持续更新)

小丑与锁鸟的技术小屋 / 2024-04-23 / 原文

  • 使用sort_values()方法排序时,缺失值会放到最后
  • 用rank()方法返回一个每个元素值在列中的排序序号
  • 使用inplace=True可以让我们就地修改数据,但是要小心,它会销毁所有被删除的数据。
  • 例如,当我们多次使用set_index反复修改索引列,而又没有保存副本,最后想要reset_index的时候就无法恢复到最初的数据。
  • 利用标签的切片运算与普通的Python切片运算不同,其末端是包含的:
点击查看代码
In [1]: obj = pd.Series(np.arange(4),index=['a','b','c','d'])
        obj[:'d']
Out [1]:
a    0
b    1
c    2
d    3
dtype: int32
  • loc和iloc使用单一值或者一个列表的方式获取行元素,使用 [:,值或列表] 的方式获取列元素
  • 尽量使用loc和iloc来选取想要的数字,即使你只想要一个行或者列,这样可以避免一些混淆标签名和索引值的错误,也更加清晰。
  • 当两个df的形状不一致时,强行相加会导致大量的NAN值,使用add方法和fill_value参数可以指定不存在的值按什么来参与计算(例如按0计算)
  • 使用df.idmax()方法可以获取最大值所对应的索引

附表一:Dataframe可以使用的描述和汇总统计方法(来源:《利用python进行数据分析》)