欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用Python进行数据可视化(三、处理csv文件)

程序员文章站 2022-06-01 14:06:10
...

csv 逗号分隔值文件格式,其文件以纯文本形式存储表格数据(数字和文本)。

CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。通常都是纯文本文件。建议使用WORDPAD或是记事本(NOTE)来开启,再则先另存新档后用EXCEL开启,也是方法之一。                                          ------摘自百度百科

使用python标准库的csv模板可以分析csv文件,提取有用信息。

首先,我们打开csv文件并且打印文件头(csv文件可在网上下载,本文用到的文件在ituring.cn/book/1861/)(点击打开链接右侧的随书下载)

#导入csv模块
import csv

#指定文件名,然后使用 with open() as 打开
filename = 'sitka_weather_07-2014.csv'
with open(filename) as f:
        #创建一个阅读器:将f传给csv.reader
        reader = csv.reader(f)
        #使用csv的next函数,将reader传给next,将返回文件的下一行
        header_row = next(reader)
        
        for index, column_header in enumerate(header_row):
                print(index, column_header)
        

 

运行后看到打印结果

 

使用Python进行数据可视化(三、处理csv文件)

通过阅读文件头可以了解文件包含的信息类型。

 

知道了这些信息后我们可以开始读取数据,先来读取最高气温(1 Max TemperatureF)

在刚刚的基础上加上这些代码(注意缩进,应该在with open 内)

        #读取最高气温
        #创建最高气温的列表
        highs =[]
        #遍历reader的余下的所有行(next读取了第一行,reader每次读取后将返回下一行)
        for row in reader:
                highs.append(row[1])
        print(highs)

执行后将打印最高气温

使用Python进行数据可视化(三、处理csv文件)

从结果可以看出,我们已经成功获取了最高气温,但是是字符串形式,为了让matplotlib能够读取,我们要把它转换成数字。

                #将字符串转换成数字
                high = int(row[1])
                highs.append(high)

输出如下

使用Python进行数据可视化(三、处理csv文件)

 

到这里,csv的数据基本已经提取完了。

接下来,可以借助matplotlib进行可视化。

添加两段代码

from matplotlib import pyplot as plt
#绘制图形
fig = plt.figure(dpi=128, figsize=(10,6))
plt.plot(highs,c='red')
#设置图形的格式
plt.title("Daily high temperature, July 2014", fontsize=24)
plt.xlabel('',fontsize=16)
plt.ylabel("Temperature(F)", fontsize=16)
plt.tick_params(axis='both', which="major", labelsize=16)

plt.show()

 

图形如下:

使用Python进行数据可视化(三、处理csv文件)

至此,我们已经完成了从csv文件中提取信息,并且对需要的数据进行可视化。

 

相关标签: csv