如何对数据框中的唯一值进行分类和分组?

How to categorize and group the unique values in a dataframe?

我正在使用来自 Kaggle 的这个数据集:https://www.kaggle.com/kwadwoofosu/predict-test-scores-of-students

我正在使用的数据样本:

我正在根据对此数据集所做的预测在 streamlit 上构建输入表单。在 select 输入学校名称后,我想根据此自动 select 学校设置和学校类型,如果可能,只显示该学校的 selected 可用教室。

假设,学校 selected 是 ANKYI 那么我的应用程序应该将 school_setting 值设置为 Urban,School_type 设置为 Non-public 并且只显示学校有教室。

如何使用 python 实现数据帧的这种分类?

对于 pandas 数据框中的每一列,您可以使用 .unique() 方法来 return 一个唯一值数组。

因此,对于您的数据,您可以这样做

school_types = list(df[df['school']=='ANKYI']['school_type'].unique())

为了打破这个 - .unique() 方法的 return 是一个数组类型的对象,所以我们可以把它变成一个列表(如果你想的话)。然后我们正在使用我们的数据框(无论你怎么称呼它),但我们想要过滤以只查看 'school' 等于 'ANKYI' 的行。在这些行中,我们只想查看名为 'school_type' 的列,而该列(过滤到那些行)就是我们想要 return 来自的唯一值。