如何在Excel中创建统计TRUE值组合次数的矩阵?
实现方法
方法一:用Excel手动计算
步骤1:将布尔值转为数值
先把原始的TRUE/FALSE转换成1和0,方便计算:
- 在空白单元格(比如D2)输入公式
--A2,按回车后,TRUE会变成1,FALSE变成0 - 把公式下拉覆盖所有行,再右拉覆盖所有列,得到全是数值的数据集
步骤2:构建关联矩阵
在目标矩阵的对应单元格输入求和乘积公式:
- 比如要计算Value_1和Value_2同时为TRUE的次数,在对应单元格输入
=SUMPRODUCT($D$2:$D$4,E$2:E$4)- 其中
$D$2:$D$4是Value_1的数值列,E$2:E$4是Value_2的数值列 - SUMPRODUCT会把每行的两个值相乘,再把所有行的结果相加,得到同时为1的次数
- 其中
- 把这个公式横向、纵向拖拽填充,就能得到完整的矩阵。对角线位置的数值就是对应列自身为TRUE的总次数
方法二:用Python Pandas快速计算
如果数据量较大,用代码更高效:
import pandas as pd # 假设原始数据已经读入DataFrame data = { "Value_1": [True, True, True], "Value_2": [True, True, False], "Value_3": [False, False, True] } df = pd.DataFrame(data) # 将布尔值转为整数 df_int = df.astype(int) # 计算列与列之间的点积,得到关联矩阵 result_matrix = df_int.T @ df_int print(result_matrix)
运行后输出的矩阵就是你需要的统计结果:
Value_1 Value_2 Value_3 Value_1 3 2 1 Value_2 2 2 0 Value_3 1 0 1
内容的提问来源于stack exchange,提问作者SRJCoding
相关产品推荐
相关产品推荐

