在数据分析的过程中,数据的清洗和处理是非常重要的一步。利用 Anaconda 中的常用库(如 pandas
、numpy
)可以高效地完成数据的加载、清洗、处理等操作。以下是 Anaconda 中常用的数据结构和函数,按功能进行整理,以便大家在数据分析与清洗操作中快速参考。
1. 基本数据结构
包 数据结构 描述 pandas
Series
一维数据结构,类似于一列数据,带索引。 pandas
DataFrame
二维数据结构,类似于表格,带行列标签。 numpy
ndarray
多维数组,适合数值计算和矩阵操作。
2. 数据导入与导出
功能 函数 描述 读取 CSV 文件 pd.read_csv(filepath)
从 CSV 文件读取数据。 写入 CSV 文件 df.to_csv(filepath)
将 DataFrame
写入 CSV 文件。 读取 Excel 文件 pd.read_excel(filepath)
从 Excel 文件读取数据。 写入 Excel 文件 df.to_excel(filepath)
将 DataFrame
写入 Excel 文件。 读取 SQL 数据库 pd.read_sql(query, connection)
从 SQL 数据库查询并读取数据。
3. 数据清洗
功能 函数 描述 处理缺失值 df.isnull()
检查缺失值,返回布尔值 DataFrame
。 填充缺失值 df.fillna(value)
用指定值填充缺失数据。 删除缺失值 df.dropna()
删除包含缺失值的行或列。 删除重复值 df.drop_duplicates()
删除 DataFrame
中的重复行。 替换值 df.replace(to_replace, value)
替换数据中的特定值。 更改数据类型 df.astype(dtype)
转换 DataFrame
的数据类型。 重命名列 df.rename(columns={'old': 'new'})
重命名 DataFrame
的列。 数据标准化 (df - df.mean()) / df.std()
数据标准化处理,使均值为 0,方差为 1。 数据归一化 (df - df.min()) / (df.max() - df.min())
数据归一化到 0-1 之间。
4. 数据选择与过滤
功能 函数 描述 选择列 df['column']
或 df[['col1', 'col2']]
选择 DataFrame
的一列或多列。 条件筛选 df[df['column'] > value]
筛选满足条件的行。 切片选择 df.iloc[row, col]
通过位置选择数据。 按标签选择 df.loc[row_label, col_label]
通过行列标签选择数据。 过滤唯一值 df['column'].unique()
获取列中所有的唯一值。 值计数 df['column'].value_counts()
统计列中每个值的出现次数。
5. 数据转换
功能 函数 描述 数据排序 df.sort_values(by='column')
根据指定列排序。 重置索引 df.reset_index(drop=True)
重置索引,并删除旧索引。 数据分组 df.groupby('column')
按列分组数据。 数据聚合 df.agg(['mean', 'sum'])
对分组数据执行聚合操作。 转换为透视表 pd.pivot_table(df, index='col1')
将 DataFrame
转换为透视表。 批量应用函数 df.apply(func)
对 DataFrame
的行或列批量应用函数。 数据合并 pd.concat([df1, df2])
合并多个 DataFrame
。 数据连接 pd.merge(df1, df2, on='column')
连接两个 DataFrame
,类似 SQL JOIN。
6. 数据可视化(pandas 与 matplotlib)
功能 函数 描述 折线图 df.plot.line()
绘制折线图,适合显示时间序列数据。 柱状图 df.plot.bar()
绘制柱状图,用于类别数据的比较。 直方图 df.plot.hist()
绘制直方图,用于显示数据分布。 散点图 df.plot.scatter(x='col1', y='col2')
绘制散点图,适合分析两列之间的关系。 箱线图 df.plot.box()
绘制箱线图,用于显示数据分布和异常值。
7. 统计与分析
功能 函数 描述 基本统计 df.describe()
返回 DataFrame
的基础统计信息。 计算均值 df.mean()
计算数据的均值。 计算中位数 df.median()
计算数据的中位数。 计算标准差 df.std()
计算数据的标准差。 计算最大值 df.max()
计算数据的最大值。 计算最小值 df.min()
计算数据的最小值。 计算分位数 df.quantile(q=0.75)
计算数据的特定分位数。