java mat转csv_mat格式转换成csv格式

标签:

最近发现了一个超好的工具 也可以说是代码 值得推广 能够吧mat格式批量转变成csv格式 超赞 网上的大部分都不是特别好,很多代码都不能很好的运行,现在有个Python版本的,分享给大家

# coding=utf-8

import scipy.io as sio

import pandas as pd

import os

def mat2csv():

""" 将当前目录下的data目录下的 .mat 文件转换成多个 .csv文件 :return: """

curr_path = os.path.dirname(__file__)

mat_data_path = os.path.join(curr_path, "data")

csv_data_path = os.path.join(curr_path, "csv")

if not os.path.exists(csv_data_path):

os.makedirs(csv_data_path)

if not os.path.exists(mat_data_path):

os.makedirs(mat_data_path)

file_list = os.listdir(mat_data_path)

mat_list = [file_name for file_name in file_list if file_name.endswith(".mat")]

print "find mat file : ", mat_list

for mat_file in mat_list:

file_path = os.path.join(mat_data_path, mat_file)

mat_data = sio.loadmat(file_path)

version = str(mat_data.get("__version__", "1.0")).replace(".", "_")

for key in mat_data.iterkeys():

if not str(key).startswith("__"):

data = mat_data[key][:]

print mat_file

try:

dfdata = pd.DataFrame(data)

except ValueError as e:

print e.message

continue

csv_name = "_".join([mat_file.split(".")[0], key, version, '.csv'])

csv_path = os.path.join(csv_data_path, csv_name)

dfdata.to_csv(csv_path)

if __name__ == "__main__":

mat2csv()

标签:

来源: https://blog.csdn.net/IT_NEU_Lee/article/details/83479651

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值