我有一个具有相似值的DataFrame。重要性是值所在的列。 (主要DataFrame)
values = [(' 12345',' 23456',' 34567',' 45678'),
(' 56789',' 67890',' 789102',' 854695'),
(' 221155',' 5968',' 55-BP',' 69853')]
标签= ['列A','列B','列C','列D']
main_df = pd.DataFrame.from_records(values,columns = label)
我正在寻找一种传递值列表的方法来搜索整个DataFrame并获取Column。 (名单) list =(' 56789',55-BP)
(Output DataFrame)
Val 1 | Column A
Val 2 | Column C
如果更容易,我可以转置轴并获得索引。
Val 1 | Index A
Val 2 | Index x
我真的想使用Python列表(不必输入以逗号分隔的列表)
谢谢
答案 0 :(得分:0)
stack()
是DataFrame
values=[('12345', '23456', '34567', '45678'),
('56789', '67890', '789102', '854695'),
('221155','5968', '55-BP', '69853')]
label=['column A', 'column B', 'column C', 'column D']
main_df=pd.DataFrame.from_records(values, columns=label)
list = ['56789', '55-BP']
#####
main_df.stack().reset_index(level=[0,1]).set_index(0).loc[list]
得
level_0 level_1
0
56789 1 column A
55-BP 2 column C
level_0
是您需要的索引,level_1
是您需要的列。