2
Я пытаюсь выбрать различные столбцы в панд dataframe с помощью клавиши выбораВыбор различных столбцов в панд dataframe
Допустим, мой dataframe есть
import pandas as pnd
s1 = pnd.Series ([0,3,6,7])
s2 = pnd.Series ([1,4,8,9])
s3 = pnd.Series ([2,5,10,11])
df = pnd.DataFrame({'A':s1, 'B':s2, 'C':s3})
A B C
0 0 1 2
1 3 4 5
2 6 8 10
3 7 9 11
и мой ключ выбор,
s4 = pnd.Series (['A','B','C','A'])
0 A
1 B
2 C
3 A
Мой желаемый результат,
0 0
1 4
2 10
3 7
Я предполагаю, что я мог запустить цикл, чтобы сделать это
l = []
for idx in df.index:
l.append(df[s4[idx]][idx])
s5 = pnd.Series(l)
print s5
Есть ли лучше/короче/более эффективный способ?
'df.stack(). Ix [zip (s4.index, s4)]'?, Но вы получите многоуровневый индекс, не уверен, что это нормально – herrfz