我有物料清单(BOM),其中包含零件及其部分属性
REFDES Tol size value
0 R1 1% CR0402 10K
1 R2 1% CR0402 1K
2 C1 20% CC0603 10uF
3 C2 20% CC0603 10uF
4 C3 10% CC0603 10uF
5 R3 1% CR0402 10K
BOM包含重复的部分。我想巩固重复的部分,结合他们的REFDES,并跟踪数量。理想的输出看起来像这样:
QTY REFDES Tol size value
0 2 R1,R3 1% CR0402 10K
1 1 R2 1% CR0402 1K
2 2 C1,C2 20% CC0603 10uF
3 1 C3 10% CC0603 10uF
到目前为止,我已经能够识别重复的部分并计算其数量,但我不确定跟踪REFDES属性的优雅方式
这是我到目前为止所做的事情
df = df.groupby(['size', 'value', 'Tol']).size().reset_index(name='QTY')
size value Tol QTY
0 CC0603 10uF 10% 1
1 CC0603 10uF 20% 2
2 CR0402 10K 1% 2
3 CR0402 1K 1% 1
答案 0 :(得分:1)
使用agg
+ set
df.groupby(['size', 'value', 'Tol']).agg([lambda x : ','.join(x),'count']).reset_index()
Out[441]:
size value Tol REFDES
<lambda> count
0 CC0603 10uF 10% C3 1
1 CC0603 10uF 20% C1,C2 2
2 CR0402 10K 1% R1,R3 2
3 CR0402 1K 1% R2 1