首页 > 解决方案 > 如何动态过滤 Pandas 数据框中的数据?

问题描述

我有 3 个具有不同列的不同数据框,如下所示。

df1 = pd.DataFrame({"Name": ['A', 'B', 'C'], "Age": [1, 2, 3]})

df2 = pd.DataFrame({"Addr": ['D', 'E', 'F'], "PIN": [4, 5, 6]})

df3 = pd.DataFrame({"State": ['X', 'Y', 'Z'],"Phone": [7, 8, 9]})

我将传递两个参数 Dataframe_Name, Column_Name 。

基于以上两个参数,它将过滤并打印相应 Dataframe 和 Column 的数据。

如何做到这一点?

标签: pythonpython-3.xpandasnumpydataframe

解决方案


你需要这个:

In [3566]: def filter_df(df, col):
      ...:     return df[col]
      ...: 

In [3567]: filter_df(df2, 'Addr')
Out[3567]: 
0    D
1    E
2    F
Name: Addr, dtype: object

In [3568]: filter_df(df1, 'Name')
Out[3568]: 
0    A
1    B
2    C
Name: Name, dtype: object

推荐阅读