以下是一个示例的解决方法,使用Python编写:
# 定义一个函数,用于计算不同列中的值的计数器
def count_values_in_columns(data):
# 创建一个空字典,用于存储每列中的值的计数器
counter = {}
# 遍历数据的每一行
for row in data:
# 遍历每一列的索引和值
for idx, val in enumerate(row):
# 如果当前列的索引不在计数器中,则将其添加到计数器中
if idx not in counter:
counter[idx] = {}
# 如果当前值不在当前列的计数器中,则将其添加到计数器中,并将计数器初始化为1
if val not in counter[idx]:
counter[idx][val] = 1
# 否则,将当前值的计数器加1
else:
counter[idx][val] += 1
# 返回计数器
return counter
# 示例数据
data = [
[1, 2, 3],
[1, 2, 3],
[4, 5, 6],
[4, 5, 6],
[7, 8, 9],
[7, 8, 9]
]
# 调用函数计算每列中的值的计数器
counter = count_values_in_columns(data)
# 打印计数器
for col, val_counter in counter.items():
print(f"列 {col} 中的值计数器:{val_counter}")
输出结果为:
列 0 中的值计数器:{1: 2, 4: 2, 7: 2}
列 1 中的值计数器:{2: 2, 5: 2, 8: 2}
列 2 中的值计数器:{3: 2, 6: 2, 9: 2}
该示例中,函数count_values_in_columns
接受一个二维列表作为输入数据,遍历每一行的每一列,使用字典counter
来记录每列中各个值的计数器。最后,函数返回计数器。然后,我们可以遍历计数器,打印每列中的值的计数器。
上一篇:不同列中的值的动态分布
下一篇:不同列中生成值的随机分布