
在任何数据分析或机器学习项目中,数据探索是至关重要且不可或缺的第一步。通过对数据集进行初步的检查和理解,我们可以:
Pandas DataFrame 提供了强大的功能来处理和分析数据,但有时我们需要一个快速、集中的方式来概览所有列的关键属性。本文将展示如何构建这样一个汇总表。
要生成所需的汇总表,我们的核心思路是遍历 DataFrame 中的每一列,并提取其数据类型和唯一值信息。具体步骤如下:
首先,我们创建一个示例 DataFrame 来演示这个过程:
import pandas as pd
# 示例 DataFrame
df = pd.DataFrame({
'letter': ['a','b','c','a','b','c'],
'state': ['CA','FL','CA','FL','CA','FL'],
'scores': [11.6,12.8,13.9,14.2,15.8,16.2],
'age': [12,28,19,14,12,28]
})
print("原始 DataFrame:")
print(df)接下来,我们实现生成汇总表的逻辑:
# 用于存储每列信息的列表
column_names = []
data_types = []
unique_values_str = []
unique_counts = []
# 遍历 DataFrame 的每一列
for col in df.columns:
# 获取列名
column_names.append(col)
# 获取数据类型
data_types.append(df[col].dtype)
# 获取唯一值,并将其转换为字符串列表,然后用逗号连接
# 注意:对于数值类型,unique() 方法返回的 dtype 可能为 float64 或 int64
temp_unique_vals = [str(x) for x in df[col].unique()]
unique_values_str.append(','.join(temp_unique_vals))
# 获取唯一值的数量
unique_counts.append(len(temp_unique_vals))
# 将收集到的信息构建成新的 DataFrame
summary_df = pd.DataFrame({
'Column_Name': column_names,
'Dtype': data_types,
'Unique_Values': unique_values_str,
'Unique_Count': unique_counts
})
print("\n生成的汇总表:")
print(summary_df)代码解析:
为了提高代码的复用性,我们可以将上述逻辑封装到一个函数中:
def generate_dataframe_summary(df: pd.DataFrame) -> pd.DataFrame:
"""
为 Pandas DataFrame 生成一个汇总表,包含列名、数据类型、唯一值及其数量。
Args:
df (pd.DataFrame): 需要生成汇总表的 DataFrame。
Returns:
pd.DataFrame: 包含每列汇总信息的 DataFrame。
"""
column_names = []
data_types = []
unique_values_str = []
unique_counts = []
for col in df.columns:
column_names.append(col)
data_types.append(df[col].dtype)
temp_unique_vals = [str(x) for x in df[col].unique()]
unique_values_str.append(','.join(temp_unique_vals))
unique_counts.append(len(temp_unique_vals))
summary_df = pd.DataFrame({
'Column_Name': column_names,
'Dtype': data_types,
'Unique_Values': unique_values_str,
'Unique_Count': unique_counts
})
return summary_df
# 使用函数
summary_table = generate_dataframe_summary(df)
print("\n使用函数生成的汇总表:")
print(summary_table)本文详细介绍了如何使用 Python 和 Pandas 库为 DataFrame 创建一个包含列名、数据类型、唯一值列表和唯一值数量的汇总表。这种方法简单、直观且易于实现,是数据探索阶段非常有用的工具。通过将核心逻辑封装成函数,可以轻松地在不同的数据分析任务中复用,从而提高工作效率和代码可维护性。
以上就是如何使用 Pandas 生成 DataFrame 列的数据类型与唯一值汇总表的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号