打开记事本,根据课件关于城市温度的距离,自己创建数据集文件,存为csv文件,要求: 有坏行,有缺失值。 读取文件,处理坏行,缺失值分别用平均值、中位值替换,需要有运行结果输出。
时间: 2024-09-13 09:02:33 浏览: 50
求教为何python写入csv文件,用txt方式打开,发现头尾各多了一个双引号”!谢谢!
5星 · 资源好评率100%
在Windows系统中,你可以按照以下步骤操作来创建一个包含坏行和缺失值的数据集CSV文件,并对它进行简单的预处理:
1. **打开记事本**:
- 点击左下角开始菜单 -> 找到“记事本”或者“Notepad”应用并打开。
2. **创建数据集**:
- 首先,输入一些模拟的城市温度数据,每行代表一天的温度,可以添加一些明显的错误格式(如非数字字符、空白行等)。例如:
```
City,Average Temperature
New York,70
London,65
Tokyo,,80
Moscow,50
Sydney,"Bad Data"
```
这里,“Tokyo,”表示缺少值,而"Bad Data"则是坏行示例。
3. **保存文件**:
- 在记事本顶部,选择“文件” > “另存为”,在弹出的对话框中输入文件名(比如“city_temperatures.csv”),选择CSV作为文件类型,然后点击“保存”。
4. **处理数据**:
- 使用Python的`pandas`库来读取和处理这个CSV文件。首先安装pandas,如果还没有安装的话:
```
pip install pandas
```
然后,在命令行中运行以下代码:
```python
import pandas as pd
# 读取文件
df = pd.read_csv("city_temperatures.csv", na_values=['', 'Bad Data'])
# 处理坏行和缺失值
df.dropna(inplace=True) # 删除含有空值的行
df['Average Temperature'].replace('Bad Data', df['Average Temperature'].mean(), inplace=True) # 替换坏值为平均值
df.fillna(df.median(), inplace=True) # 如果还有缺失值,填充中位数
# 输出处理后的结果
print(df)
df.to_csv("cleaned_city_temperatures.csv", index=False) # 写入新的CSV文件
```
现在,你已经创建了一个包含坏行和缺失值的数据集,并用平均值和中位数进行了预处理。运行上述代码后,你会看到清理过的数据以及新生成的已处理文件`cleaned_city_temperatures.csv`。
阅读全文