Python读取mat文件-转csv文件

2023-11-05

这篇教程主要介绍如何使用Python读取mat文件并且转csv文件。

一、读取mat文件和转CSV

首先将MATLAB生成的mat文件存储在一个目录下
在这里插入图片描述

import pandas as pd
import scipy
from scipy import io
import os
#遍历文件夹
for dirname, _, filenames in os.walk('./data'):
    for filename in filenames:
        print(os.path.join(dirname, filename))
        # print(filename)
        # print(os.path.realpath(filename))  # 获取当前文件路径
        print(os.path.dirname(os.path.realpath(filename)))  # 从当前文件路径中获取目录
        # print(os.path.basename(os.path.realpath(filename)))  # 获取文件名
        (file, ext) = os.path.splitext(os.path.realpath(filename))
        # print(file)
        print(os.path.basename(os.path.realpath(file)))  # 获取文件名
        # print(ext)
        print(dirname)


        path = os.path.join(dirname, filename)
        # 1、导入文件
        matfile = scipy.io.loadmat(path)
        # 2、加载数据
        datafile = list(matfile.values())[-1]
        # 3、构造一个表的数据结构,data为表中的数据
        dfdata = pd.DataFrame(data=datafile)
        # 4、保存为.csv格式的路径
        datapath = dirname+'\\'+os.path.basename(os.path.realpath(file))+'.csv'
        # 5、保存为.txt格式的路径
        dfdata.to_csv(datapath, index=False)

运行之后就可以在改目录下转为CSV文件。
在这里插入图片描述

二、读取CSV和数据转置

import pandas as pd

train_df = pd.read_csv('目录/r.csv',header=None)
print(train_df)
data = train_df.values
print(data)

#将数据行列转置
data = list(map(list,zip(*data)))
data = pd.DataFrame(data)
data.to_csv("目录/r_.csv",header=0,index=0)
train_df_ = pd.read_csv('E:/Paper_Code/My_NET_Code/21_9_15/data/r_.csv',header=None)
print(train_df_)
data_ = train_df_.values
print(data_)

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python读取mat文件-转csv文件 的相关文章

随机推荐

  • Spring Boot集成RocketMq(一看就会)

    目录 1 创建topic 2 新建Spring boot项目 3 导入依赖 4 配置yml文件 5 新建Controller 生产服务 6 新建消费者 7 配置类 定义topic 8 添加消息以及 消费者查看 8 1 调用接口 往Mq中添加
  • 岛屿数量(Java)

    分析 把1当成陆地 0当成海 简单来说只要上下左右如果是1的话就可以看成一个陆地 从示例中也可以很清楚的看懂 思路 用一个和grid大小一样的整型二维数组arr来代表岛屿的生成过程 遍历grid 如果遇到grid i j 1 arr i j
  • 软件生命周期与技术人的职业周期

    话题有点大 但还是忍住想说两句 也算把自己曾经的困惑落在纸上 做个记录 什么是软件的生命周期的 相信你能比我还熟练的罗列出来 从初步规划 到需求分析 再到系统设计 接着系统实现 往下系统测试 跟着发布部署 最后运行维护 中途免不了打些小补丁
  • UART通信原理

    UART 通信格式 串口全称叫做串行接口 通常也叫做 COM 接口 串行接口指的是数据一个一个的顺序传输 通信线路简单 使用两条线即可实现双向通信 一条用于发送 一条用于接收 串口通信距离远 但是速度相对会低 串口是一种很常用的工业接口 I
  • python国内镜像源

    让python pip使用国内镜像 国内源 清华 https pypi tuna tsinghua edu cn simple 阿里云 http mirrors aliyun com pypi simple 中国科技大学 https pyp
  • 有关HC-05蓝牙模块的学习记录

    文章目录 HC 05学习笔记 一 HC 05的基本硬件介绍 二 工作原理 三 使用方法 一 硬件连接 二 软件控制 1 第一个片段 2 第二个片段 四 具体应用 一 信息的传送 二 手机操纵单片机 五 注意事项 一 AT状态 1 第一种方法
  • mysql存储过程之循环(WHILE,REPEAT和LOOP)

    MySQL提供循环语句 允许我们根据条件重复执行一个SQL代码块其中有三个循环语句 WHILE REPEAT和LOOP 我们接下来分别看下 首先是WHILE语句来看下语法 WHILE expression DO statements END
  • 在 C++ STL 中复制的不同方法

    文章目录 1 C STL 中复制的不同方法及实例解析 传送门 gt gt AutoSAR实战系列300讲 糖果Autosar 总目录 1 C STL 中复制的不同方法及实例解析 C STL 中存在各种不同的 copy 它们允许以不同的方式执
  • idea设置控制台为单独的窗口

    如图 点击控制台右上角的齿轮 设置 按钮 然后点击windowed mode就可以分离出来了
  • 推荐一组用过好几年的非常稳定的dns

    通常宽带或路由里 都是未设置dns 自动获取的是本地运营商推荐的dns 那些dns非常非常的不稳定 经常打不开网页或有些图片不显示 甚至更可恶的还有广告劫持 下面推荐一组用过好几年的dns 比较稳定 分享给大家 223 5 5 5 4 2
  • you need to install ‘unbuffer‘ (from package expect or expect-dev)

    在下载完RK3399 Linux SDK后的第一次编译时 报以下错误 you need to install unbuffer from package expect or expect dev log saved on home user
  • Java循环查询数据库优化

    1 static 和 final 的用法 static 的作用从三个方面来谈 分别是静态变量 静态方法 静态类 静态变量 声明为 static 的静态变量实质上就是全局变量 当声明一个对象时 并不产生static 变量的拷贝 而是该类所有实
  • 使用git fetch和git merge手动解决一次pull request冲突

    问题提出 github上的一次 pull request 出现了 conflicts 需要解决合并冲突 冲突的内容主要是新增功能的代码和修改的注释 问题思考 由于之前没有更新分支 同时又提交了分支中的代码 而git不能在不丢失提交的情况下对
  • 自动驾驶和自然语言如何结合?NuPrompt来了!

    点击下方卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 gt gt 点击进入 自动驾驶之心 大模型 技术交流群 自动驾驶语言提示 原标题 Language Prompt for Autonomous Driving 论文链接
  • VMware Workstation17下载安装、环境搭建、网络配置最小化安装操作步骤

    一 VMware Workstation17下载安装 1 官网下载 官网网址 https www vmware com cn products workstation pro html 安装Workstation 17 Pro for Wi
  • openssl+http实现https

    openssl详解及实现https openssl详解及实现https OpenSSL 是一个安全套接字层密码库 囊括主要的密码算法 常用的密钥和证书封装管理功能及SSL协议 并提供丰富的应用程序供测试或其它目的使用 秘钥算法和协议 对称加
  • 数据库基础--多表查询

    在数据库查询过程中无法避免的需要从两张表中同时查询数据 此时我们需要用到各式各样的多表查询方式 接下来 简单介绍一下数据库基础的多表查询方式 以便于让大家更好的了解多表查询的过程 多表查询 项目开发中 在进行数据库表结构设计时 会根据业务需
  • 【五一创作】iSH修改hostname(主机名)【美化】【短篇技术类文章】

    最后一次更新 2023 4 30 请勿利用文章内的相关技术从事非法测试 由于传播 利用此文所提供的信息而造成的任何直接或者间接的后果及损失 均由使用者本人负责 作者不为此承担任何责任 文章目录 1 前言 简单 的介绍 2 踩坑 摸索 3 解
  • Arduin调节舵机的思路

    一 先判断舵机能够调节的最大值和最小值 二 让舵机转动能够平滑 三 用二维数组和for循环实现码垛机器人的效果 四 机械臂在指令模式的基础上增加手柄模式 手柄模式可以 通过键盘上字符按键操控舵机机械臂 五 通过蓝牙模块进行蓝牙无线设备连接
  • Python读取mat文件-转csv文件

    这篇教程主要介绍如何使用Python读取mat文件并且转csv文件 一 读取mat文件和转CSV 首先将MATLAB生成的mat文件存储在一个目录下 import pandas as pd import scipy from scipy i