J'ai un DataFrame Python pandas. rpt
:
rpt
<class 'pandas.core.frame.DataFrame'>
MultiIndex: 47518 entries, ('000002', '20120331') to ('603366', '20091231')
Data columns:
STK_ID 47518 non-null values
STK_Name 47518 non-null values
RPT_Date 47518 non-null values
sales 47518 non-null values
Je peux filtrer les lignes dont l'identifiant d'action est '600809'
comme ça : rpt[rpt['STK_ID'] == '600809']
<class 'pandas.core.frame.DataFrame'>
MultiIndex: 25 entries, ('600809', '20120331') to ('600809', '20060331')
Data columns:
STK_ID 25 non-null values
STK_Name 25 non-null values
RPT_Date 25 non-null values
sales 25 non-null values
et je veux obtenir toutes les lignes de certains stocks ensemble, tels que ['600809','600141','600329']
. Cela signifie que je veux une syntaxe comme celle-ci :
stk_list = ['600809','600141','600329']
rst = rpt[rpt['STK_ID'] in stk_list] # this does not works in pandas
Puisque pandas n'accepte pas la commande ci-dessus, comment atteindre l'objectif ?
0 votes
stk_list = ['600809', '600141', '600329'] result=filter(lambda item : item in stk_list,df['STK_ID']) vous pouvez utiliser le filtre pour obtenir une liste d'éléments itérables.