如何根据 table 值替换数组中的值?
How to replace values in an array based on table values?
我有以下脚本和示例数据:
import numpy as np
from tabulate import tabulate
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
table = [['cat','value'],[1,0.5],[2,0.5],[3,0.5],[4,0.5],[6,0.05],[7,0.025],[8,0.005],[9,0.123]]
print(tabulate(table))
输出:
cat value
1 0.5
2 0.5
3 0.5
4 0.5
6 0.05
7 0.025
8 0.005
9 0.123
数组 (a
) 包含类别。
如何用 table 中 "value"
列的数据替换数组中的类别?
例如数组中所有的1都会被替换为0.5等
在这个例子中,我创建了一个table。但我还有一个单独的 csv 文件,其中包含我创建的 table 中的数据。
我将在 1200 x 1200 阵列上应用它。
您可以创建一个映射字典,然后将此映射应用于您的列表。例如:
mapping = dict(table[1:])
out = [[mapping.get(v, v) for v in l] for l in a]
print(out)
打印:
[[0.5, 0.5, 0.5], [0.5, 5, 0.05], [0.025, 0.005, 0.123]]
我有以下脚本和示例数据:
import numpy as np
from tabulate import tabulate
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
table = [['cat','value'],[1,0.5],[2,0.5],[3,0.5],[4,0.5],[6,0.05],[7,0.025],[8,0.005],[9,0.123]]
print(tabulate(table))
输出:
cat value
1 0.5
2 0.5
3 0.5
4 0.5
6 0.05
7 0.025
8 0.005
9 0.123
数组 (a
) 包含类别。
如何用 table 中 "value"
列的数据替换数组中的类别?
例如数组中所有的1都会被替换为0.5等
在这个例子中,我创建了一个table。但我还有一个单独的 csv 文件,其中包含我创建的 table 中的数据。
我将在 1200 x 1200 阵列上应用它。
您可以创建一个映射字典,然后将此映射应用于您的列表。例如:
mapping = dict(table[1:])
out = [[mapping.get(v, v) for v in l] for l in a]
print(out)
打印:
[[0.5, 0.5, 0.5], [0.5, 5, 0.05], [0.025, 0.005, 0.123]]