组织表中的字段比较

fields comparison in org-tables

我想检查列和行是否相同,如下所示:

    |   | A | B | C |
    -----------------
    | A | X | 0 | 0 |
    | B | 0 | X | 0 |
    | C | 0 | 0 | X |

如果我使用下面的公式:

    #TBLFM: @<<$<<..@>$> = if (==@1,X,0)

然后我得到以下信息:

    |   | A | B | C |
    -----------------
    | A | X | A = B ? X : 0 | A = C ? X : 0 |
    | B | B = A ? X : 0 | X | B = C ? X : 0 |
    | C | C = A ? X : 0 | C = B ? X : 0 | X |

有什么问题吗?

您的公式正在比较符号,因此 A==A 始终为真。但是 A==B 的结果是整个符号表达式。

将引号添加到您的 row/column headers 会将它们视为字符串:

|   | A | B | C |
|---+---+---+---|
| A | X | 0 | 0 |
| B | 0 | X | 0 |
| C | 0 | 0 | X |
#+TBLFM: @<<$<<..@>$> = if (""=="@1",X,0)