在Matlab中处理二进制数据

在Matlab中处理二进制数据,matlab,binary,Matlab,Binary,我在matlab中加载了一个文本文件测试文件。load函数现在创建了一个带有值的变量test 1 2 3 4 5 2 3 NaN NaN NaN 现在我有了一个初始化变量X=[0 0 0 0 0 0 0 0 0]和Y=[0 0 0 0 0 0 0 0 0 0 0]。 我希望X读取test变量的第一行,并与它读取的数字对应,将元素的值从0更改为1。假设它读取1,它应该将其元素X(1)从0更改为1。同样地,Y应该执行相同的wrt第二行测试 你知道我该怎么做吗?你可以直接索引到一个向量中,如

我在matlab中加载了一个文本文件测试文件。load函数现在创建了一个带有值的变量
test

1 2  3  4   5
2 3 NaN NaN NaN
现在我有了一个初始化变量
X=[0 0 0 0 0 0 0 0 0]
Y=[0 0 0 0 0 0 0 0 0 0 0]
。 我希望
X
读取
test
变量的第一行,并与它读取的数字对应,将元素的值从
0
更改为
1
。假设它读取
1
,它应该将其元素
X(1)
0
更改为
1
。同样地,
Y
应该执行相同的wrt第二行
测试


你知道我该怎么做吗?

你可以直接索引到一个向量中,如下所示:

x=zeros(1,10);%# your zero vector
a=[1,3,7,8];  %# the index of sports you like
x(a)=1        %# change from 0 to 1

x =

     1     0     1     0     0     0     1     1     0     0

根据您的评论,我认为这是您想要的。

您的问题不清楚,您应该提供更多信息。“我想让X读第一行”是什么意思?从
0
更改为
1
的条件是什么?如果它是正的还是非零的,你会改变吗?考虑到“1,2,3,4,5”是我喜欢的运动的索引。在向量X中,我想把元素(1,2,3,4,5)的值从“0”改为“1”。