请教两个table的问题
mathematica吧
全部回复
仅看楼主
level 6
请教两个table的问题,萌新不是很懂,谢谢
1.请问应该怎样写,才能得到的结果只有四个值,也就是111,122,212,224(这里的n其实是个很复杂的公式,举个例子,a就是之前公式算出来的一个table)
2.得出的结果中,绿色括号应该怎样操作才能使他消失,也就是每组数据都是一个逗号连接,只有一层括号,谢谢
a = {{1, 1}, {1, 2}, {2, 1}, {2, 2}};
n = b*m;
Table[{b, m, n}, {b, a[[All, 1]]}, {m, a[[All, 1]]}]
2023年02月07日 09点02分 1
level 6
不好意思,代码最后那里打错了,m是取第二项
2023年02月07日 09点02分 2
level 7
如果是先把整个列表生成出来再取对角线上的元素:
Clear[a,n]
a = {{1, 1}, {1, 2}, {2, 1}, {2, 2}};
n = b*m;
Diagonal@Table[{b, m, n}, {b, a[[All, 1]]}, {m, a[[All, 2]]}]
如果只是想把a当成m的参数列表,可以:
Clear[a,n]
a = {{1, 1}, {1, 2}, {2, 1}, {2, 2}};
n[b_, m_] := b*m
{
#1, #
2, n[
#1, #
2]} & @璐村惂鐢ㄦ埛_053SRMK馃惥 a (*方法1*)
a /. {b_, m_} -> {b, m, n[b, m]} (*方法2*)
2023年02月07日 10点02分 3
代码好像被转成乱码了,有链接的部分请替换成三个连续的@
2023年02月07日 10点02分
吧务
level 12
{##, #1*
#2}&@@@a 或 {#
1,
#2, #
1*#2} &@@@a
2023年02月07日 14点02分 4
1