python提取peer地震波并进行归一化
python提取peer地震波并进行归一化
- 导入所需模块
- 创建函数得到地震波数据
- 创建函数将得到地震波数据归一化并输出
- 进行文件遍历并调用函数
大家可以直接导入代码进行提取,在文件路径处修改自己地震波所在的文件夹即可。
导入所需模块
import os
import pandas as pd
import re
创建函数得到地震波数据
# 得到地震波数据
def get_peer_data(filename):'''输入文件路径,得到地震波数据,时间间隔和地震点数量:param filename: 文件路径:return: 地震波数据(列表), 时间间隔,地震点数量'''# 读取文件peer_file = open(filename, 'r', encoding='utf-8')# 创建储存地震波的列表wave_data = []# 创建储存时间的列表time_data = []# 跳过前三行line = peer_file.readline()line = peer_file.readline()line = peer_file.readline()line = peer_file.readline()result = re.split(r'\s', line)# 时间步长读取for i in range(len(result)):if result[i] != '':time_data.append(result[i])DT = float(time_data[3])# 读取接下来的数据while True:line = peer_file.readline()# 最后一行停止if not line:breakresult_1 = re.split(r'\s', line)for i in range(len(result_1)):if result_1[i] != '':wave_data.append(float(result_1[i]))peer_file.close()return wave_data, DT, len(wave_data)
创建函数将得到地震波数据归一化并输出
def get_excel(wave_data, DT, NPTS, savepath):'''输入上一个函数得到的地震波数据,生成dataframe,进行归一化,并输出excel:param wave_data: 地震波数据:param DT: 时间间隔:param NPTS: 数据点数量:param savepath: 存储绝对路径:return:'''# 最终储存数据dataframeend_data = pd.DataFrame()# 时间列a = 0time_list = []time_list.append(0)for i in range(NPTS-1):a = a + DTtime_list.append(a)# 创建新的indexnew_index = list(range(0, NPTS))# 时间列data1 = pd.Series(time_list, index = new_index)end_data['t'] = data1# 数据列data2 = pd.Series(wave_data, index = new_index)end_data['A'] = data2# 找地震波绝对最大值num_max = end_data.iloc[:, 1].apply(abs).max()# print(num_max)# 归一化end_data['t_1'] = data1end_data['归一化A'] = end_data['A'] / num_max# 输出excelend_data.to_excel(savepath, index=False)
进行文件遍历并调用函数
file_work_path = r'F:\研究生\研究课题\地震波\抗震地震波\20条\有脉冲'
save_path = r'F:\研究生\研究课题\地震波\抗震地震波\20条\有脉冲-已处理'
i = 0
for filepath, dirname, filenames in os.walk(file_work_path):for filename in filenames:# 分离文件名称和后缀,后缀:.AT2name, suffix = os.path.splitext(filename)# 判断是否为加速度文件if suffix == '.AT2':print(name)# 生成储存文件名称save_name = name + '.xlsx'# 获取存储文件名称绝对路径abs_savepath = os.path.join(save_path, save_name)# 获取文件绝对路径abs_filepath = os.path.join(filepath, filename)# 函数1wave_data, DT, NPTS = get_peer_data(abs_filepath)# 函数2get_excel(wave_data, DT, NPTS, abs_savepath)i = i + 1print("已完成" + str(i))print('全部完成!')
python提取peer地震波并进行归一化相关推荐
- python取特定年份的数据_python,_怎样用python提取不同股票csv里特定时间段的数据,python - phpStudy...
怎样用python提取不同股票csv里特定时间段的数据 我有几千只股票的csv数据,需要算所有股票在特定时间段内的收益率. 但是数据里的日期信息并不统一,有的csv到2011年就没有了之后的信息了,有 ...
- 用Python提取解析pdf文档中内容
用Python提取解析pdf文档中内容 文章目录: 参考: 1.https://blog.csdn.net/tmaczt/article/details/82876018 # Tika库 2.http ...
- 【机器学习算法-python实现】矩阵去噪以及归一化
1.背景 项目需要,打算用python实现矩阵的去噪和归一化.用numpy这些数学库没有找到很理想的函数,所以一怒之下自己用标准库写了一个去噪和归一化的算法,效率有点低,不过还能用,大家如果有需 ...
- 怎样用Python提取信息呢?分享这3个Python PDF库
很多时候我们都会用Python去取数据文件,这些文件中很多都是PDF格式,有些PDF文件解析的时候只能解析一部分内容出来,大段的文字没有解析出来,那怎么样才能用Python提取这些信息呢? 下面小千就 ...
- [知识图谱实战篇] 三.Python提取JSON数据、HTML+D3构建基本可视化布局
前面作者讲解了很多知识图谱原理知识,包括知识图谱相关技术.Neo4j绘制关系图谱等,但仍缺少一个系统全面的实例.为了加深自己对知识图谱构建的认识,为后续创建贵州旅游知识图谱打下基础,作者深入学习了张宏 ...
- python 替换array中的值_利用Python提取视频中的字幕(文字识别)
我的CSDN博客id:qq_39783601,昵称是糖潮丽子~辣丽 从今天开始我会陆续将数据分析师相关的知识点分享在这里,包括Python.机器学习.数据库等等. 今天来分享一个Python小项目! ...
- python提取html正文为txt,python 提取html文本的方法
假设我们需要从各种网页中提取全文,并且要剥离所有HTML标记.通常,默认解决方案是使用BeautifulSoup软件包中的get_text方法,该方法内部使用lxml.这是一个经过充分测试的解决方案, ...
- python提取数据段_python提取数据段 python数据分析
如何在python中用slice分段取数据? 执行以下操作:>> a=range(6)>> a[0, 1, 2, 3, 4,5]>& ...
- python字典导入mongodb_Python语言生成内嵌式字典(dict)-案例从python提取内嵌json写入mongodb...
本文主要向大家介绍了Python语言生成内嵌式字典(dict)-案例从python提取内嵌json写入mongodb,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 从mongo查 ...
最新文章
- python expect模块_成为顶级黑客--python绝技 阅读笔记(五)
- bat判断3306端口号是否被占用
- SAP 电商云 Spartacus UI 和 SmartEdit 本地测试环境
- P4318,bzoj2440-完全平方数【二分答案,莫比乌斯函数,容斥】
- android studio资源二进制,无法自动检测ADB二进制文件 – Android Studio
- python输入名字配对情侣网名_输入姓名配对qq网名,QQ情侣昵称
- 网页视频之H264打包为fmp4调研
- v-pre让Vue直接显示{{}}不编译
- 军工电子产品环境可靠性测试试验实验室GJB150A
- 稳压器及稳压二极管型号对照表
- thinkpadX1C2021充不进去电(去除静电后依旧无效的来看看)
- 唐诗赏析--唐诗的起源,发展
- 如何批量打印dwf文件
- 真正的好老板,都是高层次的“给予者”
- MFC 公用函数和函数指针和动态库
- 【读书笔记】概率图模型——基于R语言(一)
- 免费阅读里的“B站”,后浪已乘“疯”
- 程序员如何在技术上提升自己
- 计算机考研408每日一题 day37
- 关于三点演讲与口才训练方法
热门文章
- 爱数发布AnyShare 3.5,打造私有云存储的BOX
- 通过命令查看CentOS版本的几种方法,经过搜集整理得到
- 地图java版_Mapabc——地图标注(java版)
- 为什么String作为形参不会改变本身的值?
- 从零开始的人工智能和机器学习,该从哪里入手呢?
- 金蝶KIS 引出数据WPS EXCEL 空白 所见即所得引出空白 电脑上安装了WPS 不想卸载 引出的时候用Office也是空表
- 数据库导入Excel表格
- 不启动tomcat情况下查看tomcat版本
- 云e办前端学习(六)职称管理
- 【深度学习】深度解读:深度学习在IoT大数据和流分析中的应用