概念
Pandas是Python中用于数据分析和处理的强大库。它提供了一种简单而强大的方式来处理大型数据集,包括数据清洗、数据转换、数据聚合和可视化等。
Pandas的核心组件是DataFrame,这是一种二维表格型数据结构,可以存储各种类型的数据,并提供了丰富的操作来处理这些数据。你可以使用Pandas来读取和写入各种格式的数据,如CSV、Excel、SQL等,还可以使用它来进行数据清洗、排序、筛选、分组、聚合等操作。
常用的Pandas函数:
- read_csv():用于读取CSV文件并将其转换为DataFrame对象。
- read_excel():用于读取Excel文件并将其转换为DataFrame对象。
- head():返回DataFrame的前n行,默认为前5行。
- tail():返回DataFrame的最后n行,默认为最后5行。
- describe():描述性统计,提供DataFrame中数值列的计数、平均值、标准差、最小值、最大值等统计信息。
- groupby():按照指定的列对数据进行分组,并可以对每个分组进行聚合操作。
- merge():用于将两个DataFrame进行合并,基于指定的列进行匹配。
- loc[]:基于标签进行数据选择和筛选。
- iloc[]:基于整数位置进行数据选择和筛选。
- loc[]:用于在DataFrame上执行布尔索引,基于条件筛选数据。
- dropna():删除含有缺失值的行或列。
- fillna():填充缺失值,可以使用常数填充或使用前向后向填充。
- loc[]:基于标签进行数据选择和筛选。
- apply():对DataFrame的行或列应用自定义函数。
- map():对DataFrame的列应用映射函数。
- isin():检查元素是否存在于指定列表中,返回布尔值。
- where():根据条件选择数据,如果条件为真则保留该行/列,否则用NaN填充。
read_excel()
函数的详细说明:
pandas.read_excel(io, engine=None, sheet_name=0, header=0, names=None, index_col=None, usecols=None, squeeze=False, parse_dates=True, date_parser=None, na_values=None, keep_default_na=True, verbose=False, skiprows=None, skipfooter=None, nrows=None, converters=None,傥引擎默认为 'openpyxl',如果文件格式不是 Excel 或 'openpyxl' 引擎无法读取,则需要指定其他引擎,如 'xlrd'。
sheet_name:str、int 或 list,默认为 0。要读取的工作表名称或索引。可以是单个名称、索引或多个名称的列表。如果指定了多个工作表,则返回一个字典,键为工作表名称,值为相应的 DataFrame。
header:int,默认为 0。用作列名的行号。如果省略,则将使用第一行作为列名。
names:list,默认为 None。自定义列名列表。必须具有与数据行数相同的长度。
index_col:int、str 或 list,默认为 None。用作索引的列。可以是列名、列索引或列索引列表。如果指定了多个列,则使用它们的组合作为索引。
usecols:int、str 或 list,默认为 None。要读取的列的整数索引、列名或列名列表。可以用于仅读取所需的列,提高读取性能。
squeeze:bool,默认为 False。如果返回的 DataFrame 只有一列,则返回 Series 对象。
parse_dates:bool 或 list,默认为 True。将日期列解析为 datetime 对象。可以指定要解析的日期列或将其设置为 False 以避免解析日期。
date_parser:function,默认为 None。自定义日期解析函数,必须能够接受 Pandas 的日期字符串并返回 datetime 对象。
na_values:scalar、list-like 或 dict,默认为 None。要视为缺失值的值或值的列表/字典。这些值将用 NaN 表示。
keep_default_na:bool,默认为 True。如果 na_values 为 None 且 keep_default_na 为 True,则将使用默认的缺失值列表 ['', '#N/A', '#N/A N/A', '-1.#IND', '-1.#QNAN', '-NaN', '-nan', '1.#IND', '1.#QNAN', '<NA>', 'N/A', 'NA', 'NULL', 'NaN', 'n/a', 'nan', 'null']。如果为 False,则不包括这些值。
verbose:bool,默认为 False。显示详细的进度信息,包括正在读取的行数和已处理的单元格数。
skiprows:list-like、int 或 callable,默认为 None。要跳过的行号或要跳过的行内容的函数。如果是整数,则表示要跳过的行数。如果是可调用对象,则应接受行内容并返回布尔值,指示是否应跳过该行。
skipfooter:int,默认为 None。要跳过的页脚行数(从最后一行开始计数)。仅在 engine 为 'xlrd' 时可用。
nrows:int,默认为 None。要读取的行数。仅在 engine 为 'xlrd' 时可用。
converters:dict,默认为 None。将特定列中的数据转换为自定义格式的字典或函数映射。字典的值可以是函数或字典本身(用于更复杂的转换)。