String 将字符串和整型CSV文件存储到matlab矩阵中

String 将字符串和整型CSV文件存储到matlab矩阵中,string,matlab,csv,matrix,textscan,String,Matlab,Csv,Matrix,Textscan,我有一个CSV文件,其中有3列: 字符串类型(可以是单词或句子)、整数类型、整数类型[这些是列类型] 现在我想将这些数据存储到一个矩阵中,其中字符串(整个句子存储在一个单元格中)和整数各存储在一个单元格中。我试过这个: fileID=fopen('training.csv'); C=textscan(fileID,'%s %d %d'); 但是它把句子中的每个单词放在不同的单元格里!整个sentecne应该存储在一个单元格中。我该怎么做 多谢各位 编辑:它现在似乎读到了任何东西,这就是我得到的

我有一个CSV文件,其中有3列: 字符串类型(可以是单词或句子)、整数类型、整数类型[这些是列类型]
现在我想将这些数据存储到一个矩阵中,其中字符串(整个句子存储在一个单元格中)和整数各存储在一个单元格中。我试过这个:

fileID=fopen('training.csv');
C=textscan(fileID,'%s %d %d');
但是它把句子中的每个单词放在不同的单元格里!整个sentecne应该存储在一个单元格中。我该怎么做

多谢各位

编辑:它现在似乎读到了任何东西,这就是我得到的

celldisp(C)

C{1}{1} =

     jdl 

C{2} =

     []   

C{3} =

     []
编辑

jdl h-yf u ghjktnfhcrjuj hjcljd-yf-ljye                 129771  196
EAS CJDTNCRBH YFIRJHNJCNFY UJH HTDL HTCG                819100  458
rcfcyjzcrjuj rfycrf u rhfz edl                          547653  677
trfcthbyyehuf h-yt jnltkjv eavc xrfkjdcrjv u hjccbb d   970121  884
H-YF TRFNTHBYYEHUF U EDL XRFKJDCRJUJ                    938870  630
jdl yfhyfek h-yf rtktpyjljhjryjuj                       525855  598
rhfcyjzhcrf eghfdktybtv dyenhtyybq hfqjyf u ktybycrjuj  709215  403

很像这样。它有3500行数据

如果你有Excel,你可以使用。您也可以尝试。

您可以将字符串置于引号中,然后在文本扫描中使用%q:

%q  String, where double quotation marks indicate text to keep together
编辑:如果您只需要执行一次(而不是在另一个过程中通过脚本自动执行),如何将CSV文件中的数据手动导入MATLAB(通过MATLAB提供的导入工具:

)


然后可能会将导入的变量简单地保存到MAT文件中,以便将来可以更轻松地访问它

我没有办公室。我有一台电脑。请你详细说明,我不知道你在说什么。我应该修改我的文件吗?该文件有1000行。是的,我的意思是将数据导出到csv文件中,其中字符串位于引号之间,例如,看起来像这样:“bla-bla-bla”;1.2,然后可以使用textscan中的参数%q来匹配引号之间的字符串。但只有当您可以轻松修改csv文件时(例如,通过更改输出csv文件的程序的输出例程),这才是一个选项。csv文件从哪里来(由什么生成)?由我的大学提供。这是一个培训数据,我需要导入到matlab中进行工作(机器学习)它有3列和许多行。第一列有一个句子。我一直想知道如何在matlab中将第一列作为矩阵的第一列导入。哦,好吧,那么转换格式可能不容易。所以这个解决方案不适合你。您可以上传csv文件吗?如果您希望始终在trainig脚本中导入sama数据,我建议手动导入一次,并将导入的数据保存到mat文件中,您可以通过
load('bla.mat')
在MATLAB中轻松加载该文件。