Matlab元素划分为零(Matlab element-wise division by zero)
我有两个矩阵,比如X = [1 2; 3 4; 5 6]和Y = [0 1; -1 1; 1 1]。 我想执行元素分割X./Y,但我需要一种方法来忽略Y中的所有零。
我尝试过使用类似的东西:
nonzeros = find(Y~ = 0); X(非零)./ Y(非零);
但这样做会导致结果成为列向量,我需要结果矩阵的形状与X(或Y)相同,并且需要零,其中Y为零。 所以我对这个案子的期望结果是[0 2; -3 4; 5 6]。
我也尝试了这里建议的内容( 右阵列分区:忽略除零除 ),但再次执行此操作会强制结果为列向量。
谢谢
I have two matrices, say X = [1 2; 3 4; 5 6] and Y = [0 1; -1 1; 1 1]. I want to perform element-wise division X./Y, but I need a way to ignore all the zeros in Y.
I tried using something like:
nonzeros = find(Y ~= 0); X(nonzeros) ./ Y(nonzeros);
but doing so caused the result to be a column vector, and I need the shape of the result matrix to be the same as X (or Y) and with zeros where Y was zero. So my desired result for this case is [0 2; -3 4; 5 6].
I also tried what was suggested here (Right Array Division : Ignoring division by zeroes), but doing this again forces the result to be a column vector.
Thanks
原文:https://stackoverflow.com/questions/25877625
最满意答案
尝试这个:
SELECT pc.person_id FROM groups g INNER JOIN group_clubs gc ON (gc.group_id = g.id) INNER JOIN person_club pc ON (gc.club_id = pc.club_id) WHERE g.id = 2
我认为你不需要最后一行(WHERE子句),除非你想要找回一个人。
I got the answer thanks to a colleague:
SELECT pc.person_id FROM person_club_data pc INNER JOIN group_clubs gc ON (gc.club_id = pc.club_id) WHERE gc.group_id = 2 GROUP BY pc.person_id HAVING COUNT(pc.person_id) >= ( SELECT COUNT(gc.club_id) FROM group_clubs gc2 WHERE gc2.group_id = 2 )
I select the persons, and the persons who occur exactly as often as group_clubs rows can be found for group 2 and who are connected to this group.
相关问答
更多-
persons怎么读[2022-06-07]
这里有读音,点小喇叭:http://dict.baidu.com/s?wd=person 后面+s就行了。 -
mysql:选择具有一定数量关系行的人员(mysql: selecting persons who have a certain amount of relational rows)[2021-10-23]
SELECT distinct id FROM person WHERE id IN (SELECT person_id FROM event_registration GROUP BY person_id HAVING COUNT(*) <= 10) SELECT distinct id FROM person WHERE id IN (SELECT person_id FROM event_registration GROUP BY ... -
这里有几个选项可以让您的网络在本地执行所有操作,而不需要太多管理。 通过包含裸存储库的SMB共享目录 如何让您的使用Windows的同事通过SMB共享目录,以便您可以使用Samba安装它。 然后,你们中的任何一个都可以在该目录中创建一个裸仓库: cd shared mkdir project.git git init --bare ...并推动并拉开。 使用SSH访问计算机上的存储库 如果您很高兴在您的计算机上为您的协作者提供帐户,则可以轻松创建一个他可以通过SSH访问的共享裸存储库。 如果他的用户帐户名 ...
-
获得多套(Get multiple sets)[2022-07-07]
简答:使用sets + pipelining + MULTI / EXEC,或者设置+ Lua。 1)将用户添加到频道 SADD命令 2)从频道中删除用户 SREM命令 3)获取几个选定频道中所有用户的列表 有几种方法可以做到这一点。 如果您不需要严格的原子性, 则只需要管道多个SMEMBERS命令以在一次往返中检索所有集合。 如果您只是对渠道是否有用户感兴趣,您可以通过SCARD替换SMEMBERS 。 如果需要严格的原子性,可以管道包含SMEMBERS或SCARD命令的MULTI / EXEC块。 EX ... -
尝试: DECLARE @t TABLE ( ID INT, R CHAR(1), P INT ) INSERT INTO @t VALUES ( 1, 'A', 100 ), ( 1, 'A', 100 ), ( 1, 'R', 50 ), ( 1, 'R', 50 ), ( 1, 'R', 50 ), ( 2, 'A', 100 ), ( 2, 'A', 100 ), ( 2, 'R', ...
-
将两个结果集合成一个(Joining two result sets into one)[2022-05-18]
像Playorm这样的框架为Cassandra中的JOIN(INNER和LEFT JOIN)查询提供支持。 http://buffalosw.com/wiki/Command-Line-Tool/ 您可能会看到更多示例: https://github.com/deanhiller/playorm/blob/master/src/test/java/com/alvazan/test/TestJoins.java Framework like Playorm provide support for JOIN ( ... -
检索人的最新对象(Retrieving newest object for persons)[2022-09-09]
你实际上有两个单独的结果,你正在与一个联盟。 汽车回来了。 开始和结束时间。 每人(可能)有很多车,你只想要其中一辆车。 即使在纯SQL中,这也是一个相当复杂的查询,需要HAVING子句并导致(可能)性能降低。 汽车尚未归还。 通常,当您有两个单独的规则时,您会对两个单独的查询感到满意。 您实际上正在对按人员分组的CarUsage进行聚合,其开头(或结束)等于该组的最大值。 returned = Person.objects.filter( carusage__end__isnull=True ).anno ... -
让两个人都在一起(Get the persons, who are in both sets)[2023-07-17]
尝试这个: SELECT pc.person_id FROM groups g INNER JOIN group_clubs gc ON (gc.group_id = g.id) INNER JOIN person_club pc ON (gc.club_id = pc.club_id) WHERE g.id = 2 我认为你不需要最后一行(WHERE子句),除非你想要找回一个人。 I got the answer thanks to a colleague: SELECT pc.perso ... -
您必须有一些共同的列才能合并。 从你所描述的,用相同数量的行,它只是...... final <- cbind(df1, df2) You have to have some column in common to merge on. From what you desribed, with the same number of rows it's just... final <- cbind(df1, df2)
-
所有相交集的联合(Union of All Intersecting Sets)[2021-10-10]
要扩展我在原始帖子中的注释,您需要创建一个集合列表,其中给定集合的每个成员至少与该集合中的一个其他成员共享至少一个属性。 天真地,这可以通过找到共享属性的所有对并且将迭代地具有相同伙伴的对合并在一起来解决。 这将是O(N ^ 3)(N ^ 2用于迭代对,并且最多N个单独的集合以确定成员资格)。 您还可以将此问题视为确定图的连接组件 ,其中每个对象和每个唯一属性值都是一个节点; 每个对象都将连接到每个属性值。 设置该图形将花费线性时间,您可以使用广度或深度优先搜索在线性时间内确定连接的组件。 To expan ...