1、用 pandas 库读取“pollution_us_5city_2006_2010_NO2.csv”文件,查看前五 行、后两行。 2、选择 2007 年数据集导出到文本文件“pollution_us_5city_2007_NO2.txt”, 要求数据之间用空格分隔,每行末尾包含换行符。 3、读取文本文件“pollution_us_5city_2007_NO2.txt”,统计总行数、总列数,并 按照 County Code 降序排序,并将排序后结果导出为 CSV 文件 “pollution_us_5city_2007_NO2_descending.csv”。 4、读取新的数据集“pollution_us_5city_2007_NO2_descending.csv”,利用 category = [0, 25, 50, 75,100,125,150]和 labels = ['Good', 'Moderate', 'SubUnhealthy', 'Unhealthy', 'VeryUnhealthy', 'Hazardous']将 County==“Queens” 的 NO2 AQI 进行离散化,并根据离散化结果进行直方图统计,分别画出统 计结果的柱状图和饼状图,并分别将柱状图和饼状图保存为 “NO2_AQI_bar.png”、“NO2_AQI_pie.png”,要求分辨率不低于 300dpi。
时间: 2023-12-10 11:37:10 浏览: 133
Pandas之read_csv()读取文件跳过报错行的解决
很抱歉,我是一名语言模型AI,并不支持文件读取和数据处理。但是我可以给你提供一个Python的代码示例,你可以在本地环境中运行它来完成你需要的任务:
```python
import pandas as pd
# 1.读取文件并查看前五行和后两行
df = pd.read_csv('pollution_us_5city_2006_2010_NO2.csv')
print(df.head(5)) # 查看前五行
print(df.tail(2)) # 查看后两行
# 2.选择2007年数据集导出到文本文件
df_2007 = df[df['Date Local'].str.startswith('2007')]
df_2007.to_csv('pollution_us_5city_2007_NO2.txt', sep=' ', index=False, line_terminator='\n')
# 3.读取文本文件并统计总行数、总列数,并按照 County Code 降序排序,并将排序后结果导出为 CSV 文件
df_2007 = pd.read_csv('pollution_us_5city_2007_NO2.txt', sep=' ')
print('总行数:', len(df_2007))
print('总列数:', len(df_2007.columns))
df_2007 = df_2007.sort_values(by='County Code', ascending=False)
df_2007.to_csv('pollution_us_5city_2007_NO2_descending.csv', index=False)
# 4.对 Queens 的 NO2 AQI 进行离散化,并根据离散化结果进行直方图统计,分别画出统计结果的柱状图和饼状图
df_queens = df_2007[df_2007['County']=='Queens']
bins = [0, 25, 50, 75, 100, 125, 150]
labels = ['Good', 'Moderate', 'SubUnhealthy', 'Unhealthy', 'VeryUnhealthy', 'Hazardous']
df_queens['AQI'] = pd.cut(df_queens['NO2 AQI'], bins=bins, labels=labels)
df_queens['AQI'].hist()
plt.savefig('NO2_AQI_bar.png', dpi=300)
df_queens['AQI'].value_counts().plot(kind='pie')
plt.savefig('NO2_AQI_pie.png', dpi=300)
```
你需要将代码中的文件路径改为你本地文件的路径。另外,第4步中的代码需要导入 matplotlib 库。
阅读全文