pandas的基本操作——常用函数

这篇博客介绍了在numpy和pandas中计算最大值、最小值、求和、平均值、中位数的方法,以及describe()函数在数据分析中的应用。此外,还讨论了如何根据行索引和值进行排序,为数值分析和数据整理提供基础操作指南。

1.最大、最小值、求和、平均值、中位数
max min sum mean median
np中arrayname.sum()是对整个数组求和,pandas中arrayname.sum()是对每一列单独求和;
np中arrayname[0].sum()默认水平第0行,pandas中arrayname[0].sum()默认竖直方向第0列

在这里插入图片描述

1.2 describe()函数
可以展示数组的最大最小值,平均值中位数计数等信息

1.3排序输出
根据行索引sort_index
在这里插入图片描述

根据值 sort_values
在这里插入图片描述

### Pandas基本函数及其用法 Pandas 是一种强大的数据分析工具库,广泛应用于数据处理和分析领域。以下是几个常用的基本函数以及它们的具体用法。 #### 1. `pandas-log` 的功能介绍 为了更好地理解 Pandas 中的操作行为,可以借助第三方扩展包 **pandas-log** 来提供操作反馈日志[^1]。该工具通过封装常见的 Pandas 函数,在执行过程中记录额外的日志信息,帮助开发者更清晰地追踪每一步的数据变化过程。 安装方式如下: ```bash pip install git+https://gitcode.com/gh_mirrors/pa/pandas-log.git ``` 使用示例: ```python import pandas as pd from pandas_log import log_dataframe_operations df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) log_df = log_dataframe_operations(df) # 执行任意 Pandas 操作时会自动打印日志 filtered_df = log_df[log_df['A'] > 1] print(filtered_df) ``` --- #### 2. 遍历 DataFrame 行的方法——`iterrows()` 和其他替代方案 Pandas 提供了多种方法用于遍历 DataFrame 数据中的行,其中最常见的是 `iterrows()` 方法[^2]。它能够逐行返回索引和对应的 Series 对象。然而需要注意的是,由于其性能较低,通常不推荐在大规模数据集上频繁调用此方法。 代码示例: ```python import pandas as pd data = {'Column_A': ['X', 'Y'], 'Column_B': [10, 20]} df = pd.DataFrame(data) for idx, row in df.iterrows(): print(f"Index: {idx}, Row Data: {row}") ``` 除了 `iterrows()` 外,还有更高效率的选择比如 `itertuples()` 或者基于向量化运算的 `apply()` 方法。这些方法更适合于需要高性能计算场景下的应用需求。 --- #### 3. 统计描述性信息——`describe()` 函数 对于初步探索数据分布情况而言,`describe()` 是非常实用的一个内置统计汇总命令[^3]。它可以快速生成数值型字段的关键指标(如均值、标准差等),同时也支持自定义参数调整输出范围。 实例演示: ```python sample_data = { 'Scores': [85, 90, None], 'Hours_Studied': [5, 7, 6] } frame = pd.DataFrame(sample_data) summary_stats = frame.describe() print(summary_stats) ``` 注意:如果目标是非数值类型的列,则需显式指定包含选项才能获取相应频率统计等内容。 --- #### 4. 修改列名大小写形式 有时我们可能希望统一表头命名风格以便后续加工处理更加方便一致化管理。下面展示如何利用列表推导表达式实现将现有所有列的名字转换成首字母大写的样式: 样例脚本: ```python raw_columns = ["first_name", "last_name"] cleaned_cols = [col.capitalize() for col in raw_columns] example_dataset = pd.DataFrame({ "first_name": ["John"], "last_name": ["Doe"] }) example_dataset.columns = cleaned_cols print(example_dataset.head()) ``` 上述逻辑同样适用于批量重命名复杂模式匹配条件下多级索引结构等情况。 --- #### 5. 布尔索引筛选特定条件子集 布尔掩码技术允许用户依据某些预设规则轻松提取满足要求的部分记录集合出来单独查看或者进一步深入挖掘潜在规律特性。具体做法就是先创建一个与原始表格形状相同的 True/False 数组作为过滤器作用到原对象之上即可完成整个流程自动化构建工作流简化步骤提升工作效率减少人为错误发生几率增加程序可读性和维护便利程度等方面都有显著优势体现价值所在之处值得推广普及开来让更多人受益匪浅! 简单例子说明如下所示: ```python criteria_mask = (frame['Scores'] >= 88) & (~pd.isnull(frame['Hours_Studied'])) qualified_records = frame.loc[criteria_mask] print(qualified_records) ``` 这里特别强调一点即当涉及到多个并联关系组合查询语句编写时候记得合理运用括号分隔开各个部分优先顺序从而避免语法解析歧义现象产生影响最终结果准确性造成不必要的麻烦困扰等问题出现。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值