我有一个pandas.DataFrame,其列为parentId
和id_x
。我现在尝试创建一个新列,它显示父项中相关子项(id_x
)的数量。一个条目(id)的相关SQL查询将是SELECT COUNT(*) AS amount FROM node WHERE parentId="1234qwer"
。有没有办法将其应用于数据帧中的每一行?在数据帧中,父对象也可能是更高父对象的子对象
编辑:
这是一个数据示例
df[["parentId", "id_x"]].head(4)
| parentId | id_x |
| ------------------------------------ | ------------------------------------ |
| 071cb2c2-d1be-4154-b6c7-a29728357ef3 | a061e7d7-95d2-4812-87c1-24ec24fc2dd2 |
| a061e7d7-95d2-4812-87c1-24ec24fc2dd2 | d2b62e36-b243-43ac-8e45-ed3f269d50b2 |
| None | 071cb2c2-d1be-4154-b6c7-a29728357ef3 |
| 071cb2c2-d1be-4154-b6c7-a29728357ef3 | a0e97b37-b9a1-4304-9769-b8c48cd9f184 |
有nparentId
可以匹配id_x
。现在,我想创建一个新列,用于计算/显示与特定id_x
匹配的parentId
的数量
结果应如下所示:
df[["parentId", "id_x", "Amount"]].head(4)
| parentId | id_x | Amount |
| ------------------------------------ | ------------------------------------ | ------ |
| 071cb2c2-d1be-4154-b6c7-a29728357ef3 | a061e7d7-95d2-4812-87c1-24ec24fc2dd2 | 1 |
| a061e7d7-95d2-4812-87c1-24ec24fc2dd2 | d2b62e36-b243-43ac-8e45-ed3f269d50b2 | 0 |
| None | 071cb2c2-d1be-4154-b6c7-a29728357ef3 | 2 |
| 071cb2c2-d1be-4154-b6c7-a29728357ef3 | a0e97b37-b9a1-4304-9769-b8c48cd9f184 | 0 |
输入:
输出:
计算
parentId
唯一值的数量,并将其映射到id_x
,然后分配给数据帧的amount
列解决了这个问题
相关问题 更多 >
编程相关推荐