如何使用SQL语句进行数据清理?
数据清理步骤:
- **数据概览:**查看数据表和列,了解数据类型、字段名称、数据范围等信息。
- 数据清洗: a. **缺失值处理:**处理缺少的数值值,例如使用平均值或中位数填充。 b. **错误值处理:**处理出现错误的数值值,例如使用特定值或删除这些值。 c. **数据转换:**将数据转换为所需的格式,例如日期格式或数值格式。 d. **数据筛选:**根据特定条件筛选符合条件的数据。
- **数据整理:**将清洗后的数据整理为可用于分析的格式,例如数据框或表格。
SQL 语句用于数据清理:
- **SELECT:**选择需要清理的数据字段。
- **FROM:**指定数据表。
- **WHERE:**筛选符合条件的数据。
- **GROUP BY:**对数据进行分组。
- **HAVING:**对分组后的数据进行筛选。
- **ORDER BY:**排序数据。
示例 SQL 语句:
SELECT column1, column2, column3
FROM table_name
WHERE column4 = 'value'
GROUP BY column1, column2
HAVING column3 > 10;
数据清理的示例:
假设有一个名为 customers
的数据表,其中包含以下字段:
| ID | Name | Age | City | |---|---|---|---| | 1 | John | 30 | New York | | 2 | Mary | 25 | London | | 3 | David | NULL | Paris | | 4 | Sarah | 40 | Berlin |
数据清理步骤:
- **数据概览:**查看数据表和列,了解数据类型、字段名称、数据范围等信息。
- 数据清洗: a. **缺失值处理:**使用平均值填充缺失的年龄值。 b. **错误值处理:**删除所有错误的城市值。 c. **数据转换:**将年龄值转换为数值格式。 d. **数据筛选:**筛选年龄大于 30 的客户。
- **数据整理:**将清洗后的数据整理为一个数据框,其中字段名为 ID、Name、Age、City。
结果:
| ID | Name | Age | City |
|---|---|---|---|
| 1 | John | 30 | New York |
| 2 | Mary | 25 | London |
| 3 | David | 30 | Paris |
| 4 | Sarah | 40 | Berlin |