【问题标题】:How to select lists with the same id in python?如何在python中选择具有相同id的列表?
【发布时间】:2021-02-22 15:28:29
【问题描述】:

我有一个如下所示的数据框:

id place age gender
13 1 3 1
13 2 4 1
13 3 3 2
13 4 4 2
14 1 3 1
14 2 4 1
14 3 3 2

我想选择placeagegender,其中id 在Python 中是唯一的。比如id=13,我要选择矩阵:

place age gender
1 3 1
2 4 1
3 3 2
4 4 2

请注意,id 的长度不同。 感谢您的帮助。

【问题讨论】:

    标签: python pandas data-preprocessing


    【解决方案1】:

    您只需执行df[df['id'] == 13],即可选择所有id 为13 的行。

    如果您只想要剩余的列placeagegender,那么:

    df.loc[df['id'] == 13, ['place', 'age', 'gender']]
    # or
    df[df['id'] == 13][['place', 'age', 'gender']]
    

    【讨论】:

    • 天哪,我喜欢这种语法df[df['id'] == 13][['place', 'age', 'gender']]...
    • @HamzaMks 在你的 for 循环中,将 df[:,'id'] 更改为 df.loc[:,'id']。或者只是 for i in df['id']: 如果您只想将 id 单独放在循环中。
    • @HamzaMks 不客气。欢迎来到 StackOverflow!如果有帮助,请阅读:What should I do when someone answers my question?,以及 acceptingvoting
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 2020-12-20
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 2021-05-11
    相关资源
    最近更新 更多