У меня есть dataframe, как belows.
df
a b c
w 5 3 3
x 4 7 6
y 6 2 5
z 2 6 2
И у меня есть список, как belows.
a
[['w', 'x', 'w'],
['x', 'y', 'y']]
Как я могу получить результаты, подобные
[[5,7,3],
[4,2,5]]
Если единственный способ - использовать цикл for, который является самым быстрым способом?
Я думаю, что цикл должен быть достаточно быстрым
[[df.loc[z,y] for z,y in zip(x,df.columns)] for x in l ]
Out[981]: [[5, 7, 3], [4, 2, 5]]
Предполагая, что длина подписок всегда совпадает с длиной столбцов
[[*df.lookup(i, df.columns)] for i in a]
[[5, 7, 3], [4, 2, 5]]
df.at
вместо этого.