Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 将matlab列拆分为几列?_Arrays_Matlab_Split_Cell - Fatal编程技术网

Arrays 将matlab列拆分为几列?

Arrays 将matlab列拆分为几列?,arrays,matlab,split,cell,Arrays,Matlab,Split,Cell,我有一个.txt文件,加载时会将数据放入: 'A: -379 G: 277 ' 'A: -422 G: 291 ' 'A: -361 G: 217 ' 作为一个单元格,我试着让它与importdata('.txt'')等一起工作,也试过其他人的想法,但到目前为止都是空手而归。很可能是因为不了解某些函数如何工作得足够好 可以猜测,我需要将数据排序为4列,以便访问2组值,例如: 1 2

我有一个.txt文件,加载时会将数据放入:

'A:     -379     G:      277 '
'A:     -422     G:      291 '    
'A:     -361     G:      217 '
作为一个单元格,我试着让它与importdata('.txt'')等一起工作,也试过其他人的想法,但到目前为止都是空手而归。很可能是因为不了解某些函数如何工作得足够好

可以猜测,我需要将数据排序为4列,以便访问2组值,例如:

 1       2        3        4 <- Column
A:     -379      G:      277
A:     -422      G:      291    
A:     -361      G:      217 

1234您可以使用
textscan

s = fopen('MPU2.txt', 'r');
data=textscan(s,'%s%d%s%d%*s');
fclose(s);
您可以使用来解决解析问题

fid = fopen('text_43254785.txt');
data = textscan(fid, '%s%f%s%f', 'Delimiter',' ', 'MultipleDelimsAsOne',1);
fclose(fid);
格式说明符是“%s%f%s%f”
,表示一行[字符串、数字、字符串、数字]。我使用了
'Delimiter'、''MultipleDelimsAsOne',1
将多个空格视为单个分隔符。结果是

>> data{1}

ans = 

    'A:'
    'A:'
    'A:'

>> data{2}

ans =

  -379
  -422
  -361
从这一点上,你可能可以继续你的项目

编辑:
更新为使用pastebin示例。

请提供一个您希望如何解析字符串的示例。A
A:
A
。或者您想要一个
struct
data.a=[-379-422-361]
试图在编辑中这样做,实际上是将a的结构变成一个包含4列的数组,其中第2列和第4列包含数据。这似乎无法实现。。它返回一个1x4矩阵,似乎没有实际保存任何数据。不确定我是否使用了错误的函数,B=textscan('MPU2.txt','%2s%d%2s%d')假设数据没有被“这是我遇到的问题之一,对不起,应该更清楚地说明这一点。”。您展示的新代码创建了一个“数组”,其中包含一个值3,以及一个1x4数组。我试图让它工作,但似乎没有工作,编辑了我以前的注释以匹配它。我也尝试过Jørgens的尝试,并上传了一个txt的粘贴箱(警告它太大),然后我再次将其下载为.txt文件并加载,这似乎删除了“”标记。但是,我仍然无法使任何代码正常工作。使用该方法,数据{1}似乎返回:ans=0×1空单元格数组我将尝试上载文本文件,可能存在一些看不见的问题。这是指向pastebin的链接,它向我显示了.txt文件没有显示的内容,每组数据之间有一个间距。当我把它加载到一个新的.txt文件中时,matlab像以前一样加载了它。但现在“”似乎不见了。所以
应该在那里吗?当前答案适用于pastebin示例。啊!现在似乎可以工作了,只是数据给了我一个4x1。。。每个电池都是2531x1的双电池,我想这就是我需要的。我得试一下,但我认为它行得通:)但是你知道怎么。。现在将数据“解包”到阵列中吗?我有一些问题。还是非常感谢你的帮助!