从 DataFrame 中提取具有多列的唯一值
Extract unique value with multiple columns from DataFrame
我有一个数据框,我想从其中提取两列的值,但条件集是其中一列的唯一值。在下图中,我想从 'education-num' 中提取 'education' 的唯一值及其对应的值。我可以使用 df['education'].unique()
轻松提取唯一值,但无法提取 'education-num'.
image of the dataframe.
(最初的任务是计算受过学士、硕士和博士学位的人数,我认为比较 'education-num' 而不是字符串上的逻辑运算符会更容易。但是如果有任何我们可以直接从 'education' 执行此操作的方法也很有帮助。
编辑:结果 Dataframe.isin
帮助解决方案 中给出的字符串列表 select 行。)
P.S。 stack-overflow 不允许我直接 post 图像,而是 posted a link 代替...
Select 列按子集并调用 DataFrame.drop_duplicates
:
df1 = df[['education', 'education-num']].drop_duplicates()
如果需要统计人口使用:
df2 = df.groupby(['education', 'education-num']).size().reset_index(name='count')
我有一个数据框,我想从其中提取两列的值,但条件集是其中一列的唯一值。在下图中,我想从 'education-num' 中提取 'education' 的唯一值及其对应的值。我可以使用 df['education'].unique()
轻松提取唯一值,但无法提取 'education-num'.
image of the dataframe.
(最初的任务是计算受过学士、硕士和博士学位的人数,我认为比较 'education-num' 而不是字符串上的逻辑运算符会更容易。但是如果有任何我们可以直接从 'education' 执行此操作的方法也很有帮助。
编辑:结果 Dataframe.isin
帮助解决方案
P.S。 stack-overflow 不允许我直接 post 图像,而是 posted a link 代替...
Select 列按子集并调用 DataFrame.drop_duplicates
:
df1 = df[['education', 'education-num']].drop_duplicates()
如果需要统计人口使用:
df2 = df.groupby(['education', 'education-num']).size().reset_index(name='count')