我有一个数据框 x:
x = pd.DataFrame(np.random.randn(3,3), index=[1,2,3], columns=['A', 'B', 'C'])
x
A B C
1 0.256668 -0.338741 0.733561
2 0.200978 0.145738 -0.409657
3 -0.891879 0.039337 0.400449
Run Code Online (Sandbox Code Playgroud)
我想选择一堆索引列对来填充新系列。例如,我可以选择[(1, 'A'), (1, 'B'), (1, 'A'), (3, 'C')]哪个将生成具有 4 个元素的列表、数组或系列:
[0.256668, -0.338741, 0.256668, 0.400449]
Run Code Online (Sandbox Code Playgroud)
知道我应该怎么做吗?
我认为get_value()并且lookup()更快:
import numpy as np
import pandas as pd
x = pd.DataFrame(np.random.randn(3,3), index=[1,2,3], columns=['A', 'B', 'C'])
locations = [(1, "A"), (1, "B"), (1, "A"), (3, "C")]
print x.get_value(1, "A")
row_labels, col_labels = zip(*locations)
print x.lookup(row_labels, col_labels)
Run Code Online (Sandbox Code Playgroud)