Python Pandas 面试30问与答精要
1. Python中的Pandas是什么?
Pandas是一个开源的Python库,具有强大内置方法,可高效清洗、分析和操作数据集。由Wes McKinney于2008年开发,该强大包可轻松与Python中其他数据科学模块融合。Pandas构建在NumPy库之上,即其数据结构Series和DataFrame是NumPy数组的升级版本。
2. 为什么DataFrame.shape没有括号?
在pandas中,shape是一个属性而非方法。df.shape
输出一个包含DataFrame行数和列数的元组。
3. pandas中的索引是什么?
索引是一系列标签,可唯一标识DataFrame的每一行。索引可以是任何数据类型,如整数、字符串、哈希。
4. loc和iloc有什么区别?
loc和iloc方法都用于选择DataFrame的子集。实践中广泛用于基于条件过滤DataFrame。loc使用行和列的实际标签选择数据,而iloc方法使用行和列的整数索引提取数据。
5. 如何获取DataFrame中分类列的所有唯一值的计数?
该函数返回每个唯一序列或列的计数。
|
|
6. 什么是Timedelta?
Timedelta表示持续时间,即两个日期或时间之间的差异,以天、小时、分钟和秒为单位测量。
7. append和concat方法有什么区别?
可使用concat方法沿行或列组合DataFrame,而append仅用于组合行。
8. 获取DataFrame中所有列统计摘要的pandas方法是什么?
df.describe()
生成描述性统计信息,包括总结数据集分布的中心趋势、离散度和形状。
9. Series和DataFrame有什么区别?
DataFrame:pandas DataFrame呈表格格式,具有多行和多列,每列可以是不同数据类型。二维数据结构,像二维数组或带有行和列的表。 Series:Series是一维标记数组,可存储任何数据类型,但其所有值应为相同数据类型。Series数据结构更像DataFrame的单列。比DataFrame消耗更少内存,如整数、字符串、Python对象。
10. 如何访问pandas DataFrame的前6行和后7行?也称为查看数据。
pandas中的head()方法用于访问DataFrame的初始行,tail()方法用于访问最后行。head()的反方法是tail(),显示数据框对象的最后n(默认为5)行。
访问前6行:dataframe_name.head(6)
访问后7行:dataframe_name.tail(7)
11. 如何获取数据框中的最大和最小索引?
|
|
12. 如何描述数据框中项目或列之间的关系?
Python pandas提供工具和方法高效执行分析。
- 相关性分析:相关性分析是一种统计技术,用于测量两个变量之间线性关系的强度和方向。 相关系数解释:
相关系数(通常用符号ρ或r表示)范围从-1到1: 相关系数为1表示完全正线性关系,意味着一个变量增加,另一个变量也成比例增加。 相关系数为-1表示完全负线性关系,意味着一个变量增加,另一个变量成比例减少。 相关系数为0表示变量之间无线性关系。值介于-1和1之间表示线性关系的强度和方向:
值越接近1表示正相关性越强。 值越接近-1表示负相关性越强。 值越接近0表示线性关系越弱或无线性关系。
13. 运行代码后如何获取行中项目的值?
使用value_counts()获取值。
14. info()方法在pandas中打印什么?如何将DataFrame导出到CSV文件?
info()- 该方法打印数据框的简明摘要,包括有关索引、数据类型、列、非空值和内存使用情况的信息。
清理和预处理数据后,下一步可能是将数据框导出到文件。to_csv()
|
|
15. 如何获取pandas中列的最大值以及如何创建数据集的副本
|
|
16. pandas中处理缺失数据的一些有效方法是什么?
ffill(前向填充)- 用于在数据分析中填充缺失值 - ffill:将最后一个有效观测向前传播到下一个有效。
|
|
bfill- (后向填充)是一种通过将下一个有效观测向后传播来填充DataFrame或Series中缺失值的方法。
|
|
插值:基于相邻数据点的值插补缺失值。此方法适用于有序数据,如时间序列。
|
|
使用机器学习模型- 基于数据集中其他特征预测缺失值的ML模型。对于小数据集可能复杂。
|
|
17. 简要描述df.isnull().sum()的功能?
df.isnull().sum()
用于获取每列的缺失值总数。
18. 集合的add方法的正确语法是什么?
set.add(item)
19. 使用哪些括号创建Python元组?
()
20. 哪种数据结构允许在其中添加重复的异构数据元素?
list
21. 有一个if语句由两个表达式组成,中间有逻辑and运算符。哪种情况会导致Python解释器运行if语句的主体?
当表达式返回True和True响应时。
22. 在Python中,你会为变量选择哪个名称?
_count