python多列求和

2024-06-16 09:45:02 发布

您现在位置:Python中文网/ 问答频道 /正文

需要一些建议:我正在尝试将序列计数字段与相同项目编号的组中的序列号总数相加?有什么建议吗?你知道吗

 fincon_serials = pd.read_csv('Raw Data/LISTSNO Calvinia.TXT',skiprows = 1)

 fincon_codes = pd.read_excel('Raw Data/STKCOUNT Calvinia.xls', index=None)

 fincon_codes = fincon_codes.drop(columns=['GROUP','BIN','Unnamed: 5'])

 fincon_codes = pd.merge(fincon_codes, fincon_serials[['ITEM NUMBER', 'SERIAL NUMBER']], on = ['ITEM NUMBER'])

 fincon_codes['SERIAL COUNT'] = 1

 fincon_codes = fincon_codes.groupby(['ITEM NUMBER','CAT','DESCRIPTION','NORMAL','FAULTY','SUPPLR','SWP-OUT','TOTAL','COST','VALUE','SERIAL NUMBER'])[['SERIAL COUNT']].sum()

 fincon_codes.head()

这是我的第一个问题,如果格式不正确,请接受我的道歉。你知道吗

我已经在PANDAS文档中搜索了解决方案,但是找不到适合我要做的解决方案,因为SERIAL COUNT列应该对SERIAL NUMBER列中的序列进行计数,并将其添加到SERIAL COUNT中。你知道吗

电流输出:

Output of Code

所需要的是,序列计数应该有一个每个项目编号组的总数。你知道吗

谢谢


Tags: numberreaddatarawcountserial序列item
1条回答
网友
1楼 · 发布于 2024-06-16 09:45:02

我创建了一些数据,例如:

item_number = pd.Series([1,2,2,1,1,3])
serial_number = pd.Series([112, 111, 111, 134, 155, 111])
another_column = pd.Series([1,2,3,4,5,6])
df = pd.concat([item_number, serial_number, another_column], 1)
df.columns = ['item_number', 'serial_number', 'another_column']

在您的数据中,“另一列”是任何其他列,如“CAT”、“DESCROPTION”等。 如果您需要计算“item number”中唯一值“serial number”的计数,我想您可以使用groupby(['item_number', 'serial_number'])。你知道吗

result = df.groupby(['item_number', 'serial_number']).another_column.count()

输出如下:

item_number  serial_number
1            112              1
             134              1
             155              1
2            111              2
3            111              1

是否需要将此列与其他列连接起来?如果你能提供一个和平的数据,那么我可以写完整的例子。你知道吗

相关问题 更多 >