全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
1700 4
2011-01-30
复制代码


为什么 b(b~=0) 会输出非零的entry, 这里b~=0到底什么意思?  为什么不输出b(1) b(0) b(1) b(0) b(1) b(0) b(1)?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-1-30 07:26:20
b~=0
是判断向量中对应位置是否“不是零” 不是零返回1 是零返回0
同理 输入b==0的效果恰好相反

b(b~=0)是按序列取出b向量中非零的项 或者说取出判断后的布尔型函数的非零项 当然也有b(b==0)

另外0可以换成任何其他常数 比如 b(b~=1) 应该返回 0 2 0 3 0 4
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-1 23:07:13
2# greenaven \
可是:
b=[1 2 3]
b~=0 输出 1 1 1

为什么b(b~=0) 不是b(1,1,1)呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-3 16:33:25
3# stcopy

这里b~=0 输出 1 1 1中的“1 1 1”是逻辑(逻辑真的是1 逻辑假是0)。意思就是b【1 2 3】中不等于0的数,【真 真 真】(【真(不等于0) 真(不等于0) 真(不等于0)】
b(b~=0) 应该是 1 2 3 吧
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-2-3 16:37:16
另:你在输入程序后 用whos 看看 每个ans的矩阵 是什么类型的(数字型、逻辑型等等) 就能知道
b~=0输出的(1 1 1) 不是数字
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群