【发布时间】:2022-01-15 02:46:07
【问题描述】:
创建一个列表来计算属于 product_id 的元素的数量,例如宜家餐桌
给定数据
product_IDs = [123,123,123,
321,321,321,
345,345,345,345,345]
如何根据 product_IDs 数据创建此列表?
product_elements = [1, 2, 3,
1, 2, 3,
1, 2, 3, 4, 5]
我的目标
import pandas as pd
data = {'Product_ID': product_IDs,
'Product_elements': product_elements
}
df = pd.DataFrame.from_dict(data)
df
我尝试了这个和更多的东西: [count+1 for count, elle in enumerate(product_IDs)]
【问题讨论】:
-
试试
df['product_elements'] = df.groupby('product_IDs').cumcount() + 1 -
它有效。你太棒了!!!而且这么快。谢谢你。这种不同的做法。非常感谢。
-
请下次改进问题的格式,并更详细地描述您已经尝试过的内容。祝你有美好的一天:)
-
我会的。这是我的第一次。谢谢你。 :-)
标签: python dataframe for-loop list-comprehension counting