读取CSV文件进行简单的数据处理与可视化分析

机缘巧合之下,看到了这么一个题,之前也没接触过可视化这一块,感觉挺有意思就顺手做了做


大致意思呢,就是在csv里有三种数据:一个时间,一个振幅(emmm,有点别扭),一个频率。但是在频率上有问题,有外在频率干扰,要过滤掉干扰,找出传递真正信息的频率。并对其传递的信息做出可视化分析

附上csv文件:http://pem1gzjrg.bkt.clouddn.com/data.csv (个人保证绿色无毒,可放心下载)


都准备好了就开撸~

首先先是文件的内容读取

import csv #导入模块

milliseconds = [] #创建用于存储时间的列表(横座标)
amplitude = [] #创建用于存储振幅的列表(纵座标)

with open("D:\\Users\Administrator\Desktop\data.csv") as f: #绝对路径,以‘r’模式处理(默认)
    dataReader = csv.reader(f)
    for row in dataReader:
        if(int(row[2][1:3]) == 15): #索引为2的数据代表频率,因为发现15.多的是传递信息的。字符串切片转整型进行判断
            milliseconds.append(round(float(row[0]))) #横座标添加
            amplitude.append(float(row[1][1:])) #纵座标添加

然后做出处理即可

from matplotlib import pyplot as plt #导入模块

plt.plot(milliseconds, amplitude) #把横纵座标对应的内容加进来
plt.show() #显示图窗

结果如下(可能不是很好看,可以再优化优化?):

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章