如何将枚举列表值从 DOORS 导出到 MATLAB 数据的单元格或字段中
How to export enumerated list values from DOORS into cells or fields of MATLAB data
情况是这样的。我在 DOORS 模块中有一个属性,它允许选择枚举列表的多个值。如果我将 DOORS 模块导出到 Excel 工作簿,枚举值将出现在 Excel 单元格中的单独行中。如果我导出到 CSV 文件,每个枚举 collection 都被 quote-marks 包围;每个枚举值后跟一个 CR-LF 。
如果我尝试使用 readtable
将 CSV 导入 MATLAB,导入失败,因为 CSV 文件中的某些行不是 "full-length",因为 DOORS 中相应的 objects 有某些属性的空值。如果我从 Excel 工作表导入,我可以获得所有数据,但是所有枚举值都 "crushed" 到一个字符串中。 line-break 字符丢失,无法分隔各个枚举字符串。
我尝试做这一切的原因是我想有一种自动化的方法,将 DOORS 中底层 EnumerationType 中的所有值转储到 MATLAB 中的元胞数组中,以供后续匹配和处理。我试图避免必须编写(然后分发给同事)一个 DXL 脚本,该脚本收集各个枚举值并将它们写入输出文件——除其他外,它将枚举输出与其他信息的一般导出分开属性。 (并且可能会使导入到 MATLAB 变得痛苦)。
那么:有什么想法吗? Export/import 个我错过的可能有帮助的选项?
这是输出 CSV 格式的示例。一对“”之间包含的所有内容都包含一个 object 的枚举属性值集。第一行包含 header 标签。
ID,Type,ReqStatus,_ApprovalList,_ApprovedBy
PF_SYS_RC_2436,Functional Requirement,Init,Soe Jivak,
PF_SYS_RC_2082,Non-Functional Requirement,In Review,"Soe Jivak
Lord Tyrion
Jon Snow
Larry
Moe
Curly
Groucho
Harpo
Beppo","Lord Tyrion
Larry
Moe"
PF_SYS_RC_2083,Non-Functional Requirement,In Review,"Jon Snow
Larry
Moe",Larry
PF_SYS_RC_2084,Non-Functional Requirement,In Review,Groucho,
PF_SYS_RC_2088,Non-Functional Requirement,In Review,"Lord Tyrion
Moe
Groucho",Moe
这是一种可行的方法,尽管在导入 MATLAB 后需要一些 string-matching 和正则表达式工作。
将 DOORS 模块导出到纯文本文件。是的,抱歉关于 Unicode :-(
- 使用参数导入
readtable('filename.txt','delimiter',':','readvariablenames',false);
这是因为属性名称与属性值之间用冒号分隔。结果是包含两列的 table
,Var1
和 Var2
。
- 按属性名称分隔属性内容——基本上是通过
find
或等价物为每个名称收集索引。
- 根据需要,将每个枚举列表拆分为元胞数组。这些列表是 "Var2".
单元格中每个字符串中的 comma-separated 个值
这是 MATLAB "Variables" window 为问题中提供的示例数据显示的内容。 (抱歉,我看不出如何 space 分成两个明显的列)
' 类型''Functional Requirement'
'Absolute Number' '2436'
'ReqStatus''Init'
'_ApprovedBy' ''
'_ApprovalList' 'Soe Jivak'
'_审稿人' ''
'_PeerReview' ''
'Type''Non-Functional Requirement'
'Absolute Number' '2082'
'ReqStatus''In Review'
'_ApprovedBy' 'Lord Tyrion, Larry, Moe'
'_ApprovalList' 'Soe Jivak, Lord Tyrion, Jon Snow, Larry, Moe, Curly, Groucho, Harpo, Beppo'
'_审稿人' ''
'_PeerReview' 'Peer Reviewed'
'Type' 'Non-Functional Requirement'
情况是这样的。我在 DOORS 模块中有一个属性,它允许选择枚举列表的多个值。如果我将 DOORS 模块导出到 Excel 工作簿,枚举值将出现在 Excel 单元格中的单独行中。如果我导出到 CSV 文件,每个枚举 collection 都被 quote-marks 包围;每个枚举值后跟一个 CR-LF 。
如果我尝试使用 readtable
将 CSV 导入 MATLAB,导入失败,因为 CSV 文件中的某些行不是 "full-length",因为 DOORS 中相应的 objects 有某些属性的空值。如果我从 Excel 工作表导入,我可以获得所有数据,但是所有枚举值都 "crushed" 到一个字符串中。 line-break 字符丢失,无法分隔各个枚举字符串。
我尝试做这一切的原因是我想有一种自动化的方法,将 DOORS 中底层 EnumerationType 中的所有值转储到 MATLAB 中的元胞数组中,以供后续匹配和处理。我试图避免必须编写(然后分发给同事)一个 DXL 脚本,该脚本收集各个枚举值并将它们写入输出文件——除其他外,它将枚举输出与其他信息的一般导出分开属性。 (并且可能会使导入到 MATLAB 变得痛苦)。
那么:有什么想法吗? Export/import 个我错过的可能有帮助的选项?
这是输出 CSV 格式的示例。一对“”之间包含的所有内容都包含一个 object 的枚举属性值集。第一行包含 header 标签。
ID,Type,ReqStatus,_ApprovalList,_ApprovedBy
PF_SYS_RC_2436,Functional Requirement,Init,Soe Jivak,
PF_SYS_RC_2082,Non-Functional Requirement,In Review,"Soe Jivak
Lord Tyrion
Jon Snow
Larry
Moe
Curly
Groucho
Harpo
Beppo","Lord Tyrion
Larry
Moe"
PF_SYS_RC_2083,Non-Functional Requirement,In Review,"Jon Snow
Larry
Moe",Larry
PF_SYS_RC_2084,Non-Functional Requirement,In Review,Groucho,
PF_SYS_RC_2088,Non-Functional Requirement,In Review,"Lord Tyrion
Moe
Groucho",Moe
这是一种可行的方法,尽管在导入 MATLAB 后需要一些 string-matching 和正则表达式工作。
将 DOORS 模块导出到纯文本文件。是的,抱歉关于 Unicode :-(
- 使用参数导入
readtable('filename.txt','delimiter',':','readvariablenames',false);
这是因为属性名称与属性值之间用冒号分隔。结果是包含两列的table
,Var1
和Var2
。 - 按属性名称分隔属性内容——基本上是通过
find
或等价物为每个名称收集索引。 - 根据需要,将每个枚举列表拆分为元胞数组。这些列表是 "Var2". 单元格中每个字符串中的 comma-separated 个值
这是 MATLAB "Variables" window 为问题中提供的示例数据显示的内容。 (抱歉,我看不出如何 space 分成两个明显的列)
' 类型''Functional Requirement'
'Absolute Number' '2436'
'ReqStatus''Init'
'_ApprovedBy' ''
'_ApprovalList' 'Soe Jivak'
'_审稿人' ''
'_PeerReview' ''
'Type''Non-Functional Requirement'
'Absolute Number' '2082'
'ReqStatus''In Review'
'_ApprovedBy' 'Lord Tyrion, Larry, Moe'
'_ApprovalList' 'Soe Jivak, Lord Tyrion, Jon Snow, Larry, Moe, Curly, Groucho, Harpo, Beppo'
'_审稿人' ''
'_PeerReview' 'Peer Reviewed'
'Type' 'Non-Functional Requirement'