我有一个 pandas 数据框,如下所示:
Location Test No. Type Value.1 Value.2
M-1 Test1 A 0.020 2.912
M-1 Test2 B 0.072 20.21
M-1 Test3 A 0.010 4.888
M-1 Test4 C 0.045 9.461
M-2 Test1 B 0.020 2.912
M-2 Test2 B 0.072 20.21
M-2 Test3 C 0.010 4.888
我想使用第一列和第二列作为键将其转换为字典。我想,我需要一本像这样的字典:
Location Test No. Type Value.1 Value.2
M-1 Test1 A 0.020 2.912
Test2 B 0.072 20.21
Test3 A 0.010 4.888
Test4 C 0.045 9.461
M-2 Test1 B 0.020 2.912
Test2 B 0.072 20.21
Test3 C 0.010 4.888
这样当我调用某个位置时,我可以根据测试编号(第二个键)访问值。
最佳答案
你有 pandas 数据框,你只需与它堆叠
df=df.set_index(['Location','TestNo.'])
df
Out[298]:
Type Value.1 Value.2
Location TestNo.
M-1 Test1 A 0.020 2.912
Test2 B 0.072 20.210
Test3 A 0.010 4.888
Test4 C 0.045 9.461
M-2 Test1 B 0.020 2.912
Test2 B 0.072 20.210
Test3 C 0.010 4.888
df.loc[('M-1','Test1')]
Out[299]:
Type A
Value.1 0.02
Value.2 2.912
Name: (M-1, Test1), dtype: object
关于具有两个或多个键的 Pandas 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48348470/