MATLAB導出和導入Excel文件表格數據并處理

20250507

1.MATLAB使用table函數和writetable函數將數據導出Excel表格文件

我們以高斯函數為例子,高斯函數在數學和工程領域有著廣泛的應用,它的一般形式為:

其中\mu是均值,決定了函數的中心位置;\sigma?是標準差,決定了函數的寬度。

函數名作用示例
table創建表格對象T = table(col1, col2, ...)
writetable將表格寫入文件(Excel/CSV等)writetable(T, 'file.xlsx')
fullfile跨平臺拼接文件路徑fullfile('folder', 'file')
exist檢查文件/文件夾是否存在exist('path', 'dir')
mkdir創建新文件夾mkdir('new_folder')
uigetdir交互式選擇文件夾路徑folder = uigetdir()

(1)創建表格:使用table函數將x和y數組組合成一個表格對象dataTable,并為兩列數據指定列名Wavelength和Reflectivity。

(2)導出表格到 Excel:使用writetable函數將表格對象dataTable導出為名為SFBG_Reflectivity.xlsx的 Excel 文件。

clc
clear
close all
% 設置參數
mu = 0; % 均值
sigma = 1; % 標準差
% 生成x值
x = linspace(-5, 5, 1000);
% 計算對應的y值
y = gaussian(x, mu, sigma);
% 繪制高斯函數圖像
figure;
plot(x, y, 'b', 'LineWidth', 2);
title(['高斯函數: \mu = ', num2str(mu), ', \sigma = ', num2str(sigma)]);
xlabel('x');
ylabel('f(x)');
grid on;
% 導出數據到Excel表格
dataTable = table(x',y','VariableNames',{'x值','y值'});
% 指定導出文件的路徑
output_folder = 'C:\Users\53609\Desktop\Test\20250507_Test_data\導出數據';
% 確保輸出文件夾存在,如果不存在則創建
if ~exist(output_folder,'dir')mkdir(output_folder); %創建文件夾
end
output_filename = fullfile(output_folder, '高斯函數據.xlsx'); % 創建完整的數據路徑
% 保存為新的Excel文件
writetable(dataTable, output_filename);
disp('MATLAB導出完成')
% 定義高斯函數
function y = gaussian(x, mu, sigma)y = (1 / (sigma * sqrt(2 * pi))) * exp(-((x - mu).^2) / (2 * sigma^2));
end

運行代碼后,會在當前工作目錄下生成一個Excel文件,其中包含兩列數據,第一列是x,第二列是y。

2、MATLAB實現readtable函數實現Excel表格數據的導入

函數名作用示例
readtable將 Excel 數據讀取為表格data = readtable('data.xlsx', 'Sheet', 'Sheet1', 'Range', 'A1:D10');
xlsread讀取數值和文本數據(舊版本)[num, txt] = xlsread('data.xlsx', 'Sheet1', 'A1:D10');
readmatrix讀取數值矩陣matrix = readmatrix('data.xlsx', 'Sheet', 'Sheet1', 'Range', 'A1:D10');
readcell讀取混合類型數據為單元格數組cell_data = readcell('data.xlsx', 'Sheet', 'Sheet1');
detectImportOptions檢測并自定義導入選項opts = detectImportOptions('data.xlsx'); opts.SelectedVariableNames = {'A', 'C'}; data = readtable('data.xlsx', opts);

readtable 函數用于讀取 Excel 文件中的數據,并將其存儲在一個表格對象 excel_file 中。

filename {:, 1} 表示提取表格中第一列的數據,存儲在 x變量中。

filename {:, 2} 表示提取表格中第二列的數據,存儲在 y變量中。

plot(x,y, 'b') 用于繪制以 x為橫坐標,y為縱坐標的折線圖,其中 'b' 表示藍色線。

title、xlabel 和 ylabel 函數分別用于設置圖表的標題、橫坐標標簽和縱坐標標簽。

grid on 用于顯示網格線,使圖表更清晰

clc
clear
close all
% 交互式表格數據讀取與創建
input_folder = 'C:\Users\53609\Desktop\Test\20250507_Test_data\導出數據';
filename = fullfile(input_folder,'高斯函數據.xlsx');
% 檢查文件是否存在
if exist(filename, 'file')data = readtable(filename, 'ReadVariableNames', false); % 假設無表頭% 提取第一列數據first_column = data{:,1}; % 索引第一列% 提取第二列數據second_column = data{:, 2}; % 索引第二列disp('MATLAB導入完成')
end
x= first_column;
y = second_column;
figure;
plot(x, y, 'b', 'LineWidth', 2);
title(['高斯函數: \mu = ', num2str(mu), ', \sigma = ', num2str(sigma)]);
xlabel('x');
ylabel('f(x)');
grid on;

輸出結果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/82032.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/82032.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/82032.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

推薦一組WPF自定義控件開源項目

.Net Core從零學習搭建權限管理系統教程 推薦一組WPF自定義控件開源項目。 項目簡介 這是基于WPF開發的,為開發人員提供了一組方便使用自定義組件,并提供了各種常用的示例。 包含組件:數據表格、屬性列表、樹形列表、選色器、單選框列表、…

allegro出gerber時,單擊Artwork并沒有彈窗的問題

使用allegro出gerber時,有時點擊 Artwork圖標并未如愿以償的彈出窗口。。。 可按下面嘗試恢復,注,刪除前可先備份該兩支文件。。。 看時間戳,刪除最近的下面標紅兩支文件即可。

常用設計模式在 Spring Boot 項目中的實戰案例

引言? 在當今的軟件開發領域,Spring Boot 以其高效、便捷的特性成為構建 Java 應用程序的熱門框架。而設計模式作為軟件開發中的寶貴經驗總結,能夠顯著提升代碼的可維護性、可擴展性和可復用性。本文將深入探討幾種常用設計模式在 Spring Boot 項目中的…

《饒議科學》閱讀筆記

《饒議科學》 《偷竊的生物學機制:(有些)小偷有藥可治》閱讀筆記 核心內容:探討偷竊狂(kleptomania)的生物學機制及相關研究。具體要點 偷竊狂的特征:患者不可抑制地反復偷竊個人不需要、與金錢…

從零開始搭建第一個Spring Boot應用:從入門到精通

1. Spring Boot簡介與核心概念 1.1 什么是Spring Boot? Spring Boot是Spring框架的一個擴展,它簡化了基于Spring的應用程序的初始搭建和開發過程。通過自動配置和約定優于配置的原則,Spring Boot讓開發者能夠快速啟動和運行項目。 通俗理解…

c# LINQ-Query01

文章目錄 查詢數據源標準查詢分兩類即時查詢已推遲流式處理非流式處理分類表聚合Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)Aggregate<TSour…

AI惡魔之眼使用說明書

AI惡魔之眼使用說明書 產品簡介 1.1 產品介紹 AI惡魔之眼是一款具備動態視覺效果與仿生眼睛模擬功能的智能顯示產品&#xff0c;可實現以下特性&#xff1a; 真實人眼模擬&#xff1a;支持虹膜樣式變換、眨眼動畫、瞳孔縮放等動態特效&#xff0c;仿真度高自定義內容上傳&am…

CAN報文逆向工程

在沒有DBC文件的情況下解析CAN報文獲取物理信息需要逆向工程和系統分析。以下是詳細步驟&#xff1a; 1. 數據采集與基礎分析 采集原始數據&#xff1a; 使用CAN分析工具&#xff08;如PCAN-Explorer、SavvyCAN或USB-CAN適配器配套軟件&#xff09;記錄車輛在不同狀態下的CAN數…

KL散度(Kullback-Leibler Divergence):概率分布差異的量化利器

目錄 1. 什么是KL散度?關鍵特點:2. KL散度的數學公式離散分布的KL散度公式:連續分布的KL散度公式:3. KL散度的計算示例示例1:離散分布示例2:連續分布(高斯分布)4. KL散度的核心性質1. 非對稱性2. 非負性3. 與熵的關系5. KL散度與相關性的關系1. KL散度 ≠ 相關性2. 間接…

二叉樹的遍歷與構造

唉&#xff0c;好想回家&#xff0c;我想回家跟饅頭醬玩&#xff0c;想老爸老媽。如果上天再給我一次選擇的機會&#xff0c;我會選擇當一只小動物&#xff0c;或者當棵大樹也好&#xff0c;或者我希望自己不要有那么多多余的情緒&#xff0c;不要太被別人影響&#xff0c;開心…

leetcode 141. Linked List Cycle

題目描述&#xff1a; 代碼&#xff1a; 用哈希表也可以解決&#xff0c;但真正考察的是用快慢指針法。 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Soluti…

AI輔助DevOps與自動化測試:重構軟件工程效率邊界

隨著AI技術滲透至軟件開發生命周期&#xff0c;DevOps與自動化測試領域正經歷顛覆性變革。本文系統性解析AI在需求分析、測試用例生成、部署決策、異常檢測等環節的技術實現路徑&#xff0c;結合微軟Azure DevOps、Tesla自動駕駛測試等典型場景&#xff0c;探討AI如何突破傳統效…

5月7號.

flex布局: 表單標簽: 表單標簽-表單項:

【AI面試準備】中文分詞與實體抽取技術詳解

分詞&#xff0c;詞性標準 目錄 一、分詞與詞性標注1. **分詞&#xff08;Word Segmentation&#xff09;**2. **詞性標注&#xff08;Part-of-Speech Tagging&#xff09;** 二、實體抽取&#xff08;Named Entity Recognition, NER&#xff09;1. **實體類型示例**2. **輸出…

【AI落地應用實戰】Amazon Bedrock 零門檻使用 DeepSeek-R1:在 Amazon Bedrock 上部署與調用的完整實踐指南

隨著大語言模型&#xff08;LLM&#xff09;技術的快速發展&#xff0c;企業和開發者對具備更強理解與生成能力的模型需求也愈加旺盛。DeepSeek-R1 作為 DeepSeek 公司推出的一款強大開源模型&#xff0c;不僅在多項評測中表現優異&#xff0c;更具備出色的推理能力和長文本處理…

阿里云平臺與STM32的物聯網設計

基于阿里云平臺與STM32的物聯網設計方案可結合硬件選型、通信協議、云端配置及功能實現等多個維度進行設計。以下是綜合多個參考案例的詳細設計方案&#xff1a; 一、硬件選型與架構設計 主控芯片選擇 STM32系列&#xff1a;推薦使用STM32F103&#xff08;如STM32F103ZET6、STM…

IBM BAW(原BPM升級版)使用教程Toolkit介紹

本部分為“IBM BAW&#xff08;原BPM升級版&#xff09;使用教程系列”內容的補充。 一、系統Toolkit 在 IBM Business Automation Workflow (BAW) 中&#xff0c;System Toolkit 是一組預先定義和配置好的工具、功能和組件&#xff0c;旨在幫助流程設計者和開發人員快速構建…

力扣-hot100 (矩陣置零)

73. 矩陣置零 中等 給定一個 *m* x *n* 的矩陣&#xff0c;如果一個元素為 0 &#xff0c;則將其所在行和列的所有元素都設為 0 。請使用 原地 算法。 示例 1&#xff1a; 輸入&#xff1a;matrix [[1,1,1],[1,0,1],[1,1,1]] 輸出&#xff1a;[[1,0,1],[0,0,0],[1,0,1]] 示…

安裝并運行第一個Spark程序

安裝并運行第一個Spark程序需要完成以下步驟&#xff1a;安裝Java和Spark&#xff0c;配置環境變量&#xff0c;編寫并運行Spark程序。以下是詳細的教程&#xff1a; 1. 安裝Java Spark需要Java運行環境&#xff08;JRE&#xff09;或Java開發工具包&#xff08;JDK&#xff…

Python Selenium爬蟲功能使用介紹

本文介紹python selenium 爬蟲的功能以及使用 1. 基礎核心功能 瀏覽器控制 from selenium import webdriver from selenium.webdriver.chrome.service import Service from webdriver_manager.chrome import ChromeDriverManager# 自動管理瀏覽器驅動 driver webdriver.Chro…