MATLAB中readtimetable函数用法
目录
语法
说明
示例
基于文本文件创建时间表
使用导入选项基于文件创建时间表
基于文件创建时间表并指定行时间
从电子表格文件创建时间表并格式化输入数据
readtimetable函数的功能是基于文件创建时间表。
语法
TT = readtimetable(filename)
TT = readtimetable(filename,opts)
TT = readtimetable(___,Name,Value)
说明
TT = readtimetable(filename) 通过从文件中读取列向数据来创建时间表。
readtimetable 基于文件的扩展名确定文件格式:
.txt、.dat 或 .csv(适用于带分隔符的文本文件)
.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(适用于电子表格文件)
.xml(适用于可扩展标记语言 (XML) 文件)。
对于文本和电子表格文件,readtimetable 为该文件中的每列在 TT 中创建一个变量并从文件的第一行中读取变量名称。对于 XML 文件,readtimetable 在 T 中为检测为时间表变量的每个元素或属性节点创建一个变量。变量名称对应于元素和属性名称。
readtimetable 将表格数据中 datetime 或 duration 类型的第一列设置为时间表的行时间。其余列成为时间表的变量。
TT = readtimetable(filename,opts) 还使用导入选项 opts。
TT = readtimetable(___,Name,Value) 基于文件创建一个时间表,并通过一个或多个名称-值对组参数指定其他选项。需要在上述语法的输入参数之后指定名称-值对组。
要为数据设置特定的导入选项,可以使用 opts 对象,也可以指定名称-值对组。当指定除 opts 之外的名称-值对组时,readtimetable 仅支持下列名称-值对组:
文本和电子表格参数 - ReadVariableNames、RowTimes、SampleRate、TimeStep、StartTime
仅文本参数 - DateLocale、Encoding
仅电子表格参数 - Sheet、UseExcel
示例
基于文本文件创建时间表
基于逗号分隔的文本文件创建表。
TT = readtimetable('outages.csv');
显示表的摘要。创建时间表时,如果没有为行时间指定任何参数,则 readtimetable 函数会检测并指定数据中的第一个日期时间变量或持续时间变量 OutageTime 作为行时间变量。其余变量成为时间表的变量。
summary(TT)
RowTimes:OutageTime: 1468x1 datetimeValues:Min 2002-02-01 12:18 Median 2010-03-18 21:05 Max 2014-01-15 02:41 Variables:Region: 1468x1 cell array of character vectorsLoss: 1468x1 doubleValues:Min 0 Median 180.26 Max 23418 NumMissing 604 Customers: 1468x1 doubleValues:Min 0 Median 75765 Max 5.9689e+06 NumMissing 328 RestorationTime: 1468x1 datetimeValues:Min 2002-02-07 16:50 Median 2010-03-31 10:54 Max 2042-09-18 23:31 NumMissing 29 Cause: 1468x1 cell array of character vectors
使用导入选项基于文件创建时间表
检测文本文件的导入选项,指定变量类型,然后基于数据创建时间表。
基于文件创建导入选项对象,并检查变量选项。
opts = detectImportOptions('outages.csv');
opts.VariableOptionsans = 1x6 heterogeneous VariableImportOptions (TextVariableImportOptions, DatetimeVariableImportOptions, NumericVariableImportOptions) array with properties:NameTypeFillValueTreatAsMissingQuoteRulePrefixesSuffixesEmptyFieldRule
修改选项对象,为数据中的变量指定所需的数据类型。将变量 Region 和 Cause 的数据类型更改为 categorical。
opts = setvartype(opts,{'Region','Cause'},{'categorical','categorical'});
使用 readtimetable 以及选项对象导入时间表。然后显示该时间表的汇总。
TT = readtimetable('outages.csv',opts);
summary(TT)
RowTimes:OutageTime: 1468x1 datetimeValues:Min 2002-02-01 12:18 Median 2010-03-18 21:05 Max 2014-01-15 02:41 Variables:Region: 1468x1 categoricalValues:MidWest 142 NorthEast 557 SouthEast 389 SouthWest 26 West 354 Loss: 1468x1 doubleValues:Min 0 Median 180.26 Max 23418 NumMissing 604 Customers: 1468x1 doubleValues:Min 0 Median 75765 Max 5.9689e+06 NumMissing 328 RestorationTime: 1468x1 datetimeValues:Min 2002-02-07 16:50 Median 2010-03-31 10:54 Max 2042-09-18 23:31 NumMissing 29 Cause: 1468x1 categoricalValues:attack 294 earthquake 2 energy emergency 188 equipment fault 156 fire 25 severe storm 338 thunder storm 201 unknown 24 wind 95 winter storm 145
基于文件创建时间表并指定行时间
从以逗号分隔的文本文件中读取一个表,并使用选择的行时间变量创建一个时间表。
创建一个导入选项对象并预览表格数据。
opts = detectImportOptions('outages.csv');
preview('outages.csv',opts)ans=8×6 tableRegion OutageTime Loss Customers RestorationTime Cause _____________ ________________ ______ __________ ________________ ___________________{'SouthWest'} 2002-02-01 12:18 458.98 1.8202e+06 2002-02-07 16:50 {'winter storm' }{'SouthEast'} 2003-01-23 00:49 530.14 2.1204e+05 NaT {'winter storm' }{'SouthEast'} 2003-02-07 21:15 289.4 1.4294e+05 2003-02-17 08:14 {'winter storm' }{'West' } 2004-04-06 05:44 434.81 3.4037e+05 2004-04-06 06:10 {'equipment fault'}{'MidWest' } 2002-03-16 06:18 186.44 2.1275e+05 2002-03-18 23:23 {'severe storm' }{'West' } 2003-06-18 02:49 0 0 2003-06-18 10:54 {'attack' }{'West' } 2004-06-20 14:39 231.29 NaN 2004-06-20 19:16 {'equipment fault'}{'West' } 2002-06-06 19:28 311.86 NaN 2002-06-07 00:51 {'equipment fault'}
通过将 RestorationTime 变量指定为时间表的行时间变量来创建一个时间表。然后,显示该时间表的汇总。
TT = readtimetable('outages.csv','RowTimes','RestorationTime');
summary(TT)
RowTimes:RestorationTime: 1468x1 datetimeValues:Min 2002-02-07 16:50 Median 2010-03-31 10:54 Max 2042-09-18 23:31 NumMissing 29 Variables:Region: 1468x1 cell array of character vectorsOutageTime: 1468x1 datetimeValues:Min 2002-02-01 12:18Median 2010-03-18 21:05Max 2014-01-15 02:41Loss: 1468x1 doubleValues:Min 0 Median 180.26 Max 23418 NumMissing 604 Customers: 1468x1 doubleValues:Min 0 Median 75765 Max 5.9689e+06 NumMissing 328 Cause: 1468x1 cell array of character vectors
从电子表格文件创建时间表并格式化输入数据
从电子表格文件创建一个时间表,并格式化输入数据。
例如,从文件 quarterlyFinances1999To2019.csv 创建一个时间表,指定时间戳的开始日期和每个时间戳之间的时间,并从数据中删除“$”符号。
如图所示:
以时间表形式读取文件 quarterlyFinances1999To2019.csv 中的数据。将连续行时间之间的时间长度指定为一个日历季度,从 1999 年 1 月 1 日开始。将 'VariableNamingRule' 设置为 preserve 以保留变量名称中的空白,并将 'TrimNonNumeric' 设置为 true 以删除数据中数值前的“$”符号。
TT = readtimetable("quarterlyFinances1999To2019.csv","TimeStep", calquarters(1),"StartTime", datetime(1999, 1, 1),..."VariableNamingRule", "preserve", "TrimNonNumeric", true);
显示数据的摘要。
summary(TT)
RowTimes:Time: 80x1 datetimeValues:Min 01-Jan-1999 Median 16-Nov-2008 Max 01-Oct-2018 Variables:Net Sales: 80x1 doubleValues:Min 35066Median 1.0407e+05Max 1.7684e+05Cost of Sales: 80x1 doubleValues:Min 18106 Median 48624 Max 77742 Gross Margin: 80x1 doubleValues:Min 14563 Median 56719 Max 99097 Research and Development Expenses: 80x1 doubleValues:Min 4904.9 Median 24637 Max 45234 Administrative Expenses: 80x1 doubleValues:Min 1047.4 Median 2015.3 Max 2811.5 Total Operating Expenses: 80x1 doubleValues:Min 5992.5 Median 26518 Max 48045 Net Income: 80x1 doubleValues:Min 7634.3 Median 28586 Max 51051 Total Shares: 80x1 doubleValues:Min 822 Median 1820.5 Max 2710 Earnings per Share: 80x1 doubleValues:Min 6.52 Median 15.515 Max 24.62
提示
使用 XPath 选择器指定要导入 XML 输入文档的哪些元素。例如,假设您要导入 XML 文件 myFile.xml,该文件具有以下结构:
<data><table category="ones"><var>1</var><var>2</var></table><table category="tens"><var>10</var><var>20</var></table>
</data>
下表提供 XPath 选择器名称-值参数(例如 VariableSelectors 或 TableSelector)支持的 XPath 语法。
选取操作 语法 示例 结果 选择其名称与您要选择的节点匹配的每个节点,而无论它在文档中的位置如何。 在名称前加两个正斜杠 ( //
) 前缀。data = readtable('myFile.xml', 'VariableSelectors', '//var')
data =4×1 tablevar___1 2 10 20
读取属于元素节点的属性的值。 在属性前加 at 符号 ( @
) 前缀。data = readtable('myFile.xml', 'VariableSelectors', '//table/@category')
data =2×1 tablecategoryAttribute_________________"ones" "tens"
在一组节点中选择一个特定节点。 在方括号 ( []
) 中提供要选择的节点的索引。data = readtable('myFile.xml', 'TableSelector', '//table[1]')
data =2×1 tablevar___1 2
指定运算的优先级。 在要首先计算的表达式前后添加圆括号。 data = readtable('myFile.xml', 'VariableSelectors', '//table/var[1]')
data =2×1 tablevar___1 10
data = readtable('myFile.xml', 'VariableSelectors', '(//table/var)[1]')
data =tablevar___1
MATLAB中readtimetable函数用法相关推荐
- matlab sort descend,详解Matlab中 sort 函数用法
搜索热词 (1)B=sort(A) 对一维或二维数组进行升序排序,并返回排序后的数组,当A为二维时,对数组每一列进行排序. eg: A=[1,5,3],则sort(A)=[1,3,5] A=[1,3; ...
- matlab中频域信号IFFT,MATLAB中ifft函数用法、性质、特性-以及与fft的组合应用全面深入解析(含程序)...
MATLAB中ifft函数用法.性质.特性,以及与fft的组合应用全面深入解析(含程序) 前言 在我之前的<MATLAB中fft函数用法.性质.特性.缺陷全面深入解析(含程序)>中,我已经 ...
- Matlab中 intlinprog函数用法简介
Matlab中 intlinprog函数用法简介 本来想要自己亲手写一遍的,发现了一优质博文基本上跟我做过的例题大差不差,所以就直接放上链接. 参考链接 https://www.cnblogs.com ...
- matlab stem 属性,matlab中stem函数用法_常见问题解析
matlab中如何自定义图例_常见问题解析 matlab中自定义图例的方法:首先打开matlab软件:然后点击勾选按钮,新建一个文件并输入代码为"x = 0:pi/50:2*pi;" ...
- stem什么意思matlab,matlab中stem函数用法_常见问题解析,matlab
matlab中如何自定义图例_常见问题解析 matlab中自定义图例的方法:首先打开matlab软件:然后点击勾选按钮,新建一个文件并输入代码为"x = 0:pi/50:2*pi;" ...
- matlab里randn是什么,matlab中randn函数用法
matlab中randn函数用法 MATLAB 中的randn函数 matlab函数 randn:产生正态分布的随机数或矩阵的函数 randn:产生均值为0,方差σ^2 = 1,标准差σ = 1的正态 ...
- sort函数降序排列matlab,详解Matlab中 sort 函数用法
(1)B=sort(A) 对一维或二维数组进行升序排序,并返回排序后的数组,当A为二维时,对数组每一列进行排序. eg: A=[1,5,3],则sort(A)=[1,3,5] A=[1,5,3;2,4 ...
- length命令怎么用Matlab,matlab中length函数用法
matlab中的length表示什么?应该如何使用? length:数组长度(即行数或列数中的较大值): 使用方法: n=length(A):如果A为非空数组,返回行数和列数两者之间数值较大的那一个值 ...
- matlab中imresize()函数用法
matlab中imresize()函数的功能是改变图像的大小. 其用法有多种: 1.B = imresize(A,m) 将图片A放大m倍 2.B = imresize(A,m,method) 将图 ...
最新文章
- 光伏电池的simulink仿真及一些原理
- 数字图像处理实验(14):PROJECT 06-01,Web-Safe Colors
- 【转】ASP.NET之 关于触发Global.asax Session_End事件的经验
- 专注力 化繁为简的惊人力量
- HDU - 1547 Bubble Shooter(dfs+连通块+模拟)
- 构造函数、原型、继承原来这么简单?来吧,深入浅出
- 猜数游戏,随机目标数字,直到猜中退出
- android wp主题,WP桌面:win10系统的最佳替代安卓应用
- jsp java循环读取json_JAVA JSON遍历问题,求解(内附代码)
- E 定向 牛客练习赛25
- python学来干什么-学python出来到底能干嘛
- 雷诺方程推导及FDM求解
- 控制面板音频设置里显示“没有音频设备”,没有声音的解决办法
- 用计算机怎么计算税率,一般纳税人税率计算器,一般纳税人税率如何计算?
- 保时捷狂推NFT,高调喊出打造Web3社区,Web2品牌“天生缺陷”终将折戟沉沙?...
- 超级计算器android,超级计算器 - 一上线就被AppStore官方推荐的超级计算器 - Android 应用 - 【最美应用】...
- 力扣OJ 剑指 Offer(1-30)
- 【量化交易01】CTA策略 菲阿里四价+空中花园策略
- KMP - Oulipo - HDU - 1686
- [about phd]读博=
热门文章
- 【软件工程】敏捷宣言
- sublime text 编译时提示[WinError 2] 系统找不到指定的文件。
- 内存申请标记注意区分___GFP_HIGH和___GFP_HIGHMEM
- js点击使内容变成可编辑状态
- android中的尺寸单位是什么,Android中各种长度尺寸单位(dp,dip,px,sp,pt)的区别
- MIT 线性代数 Linear Algebra 26:复矩阵,傅里叶矩阵, 快速傅里叶变换 FFT
- php期末大作业可以做什么,期末要交一个基于php连入数据的大作业
- C#实现jQuery的方法连缀
- 全球首个5G R16 Ready:紫光展锐的新征程
- 计算机网络拓扑结构课件,计算机网络拓扑结构的分析及选择