import numpy as npimport pandas as pd
df = pd.read_csv("D:\海运数据\数据需求满足\DB导出\MANIFEST_CONSUME_RECORD_202204201421.csv")df
| CUSTOMER_ID | COMPANY_NAME | USER_ID | CONSUME_TYPE | CREATE_TIME | BILL_NO_NUM | CONSUME_NUM | SHIP_AGENT | FIRST | |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 1456093696733167618 | 上海威万国际物流(集团)有限公司 | 1770786 | S | 2022-04-15 15:02:10 | 1 | 30.0 | 上港联合 | 0 |
| 1 | 33485 | 上海瀚源国际物流有限公司 | 1369829830081777664 | S | 2022-03-03 11:19:31 | 1 | 30.0 | 上海航华 | 0 |
| 2 | 8132883 | 安徽铁洋国际货运代理有限公司 | 1397838284587143168 | S | 2022-03-25 09:32:36 | 1 | 30.0 | 上海外代 | 0 |
| 3 | 36550 | 上海逸昂国际货运代理有限公司 | 4609 | S | 2022-04-04 16:14:17 | 1 | 30.0 | 上港联合 | 0 |
| 4 | 8134300 | 柠檬国际物流(深圳)有限公司 | 1503555855351881730 | S | 2022-04-12 09:42:16 | 1 | 30.0 | 上海中外运 | 0 |
| … | … | … | … | … | … | … | … | … | … |
| 92420 | 26979 | 上海纽奥德国际货物运输代理有限公司 | 1766758 | S | 2022-04-13 20:28:29 | 1 | 30.0 | 上港联合 | 0 |
| 92421 | 1396039781685751809 | 信立航国际物流(深圳)有限公司 | 1380388314149949440 | S | 2022-03-16 17:49:10 | 3 | 90.0 | 上海航华 | 0 |
| 92422 | 1291256592419532801 | 有象国际货运代理(上海)有限公司 | 1291208502446002176 | S | 2022-03-22 14:41:26 | 1 | 30.0 | 上港联合 | 0 |
| 92423 | 27734 | 上海创丰国际物流有限公司 | 405599 | S | 2022-04-03 10:10:00 | 1 | 30.0 | 上海鹏海 | 0 |
| 92424 | 1275696739731869697 | 华光源海国际物流(苏州)有限公司 | 176842 | S | 2022-03-31 17:29:09 | 1 | 30.0 | 上海鹏海 | 0 |
92425 rows × 9 columns
df.info()
<class 'pandas.core.frame.DataFrame'>RangeIndex: 92425 entries, 0 to 92424Data columns (total 9 columns):# Column Non-Null Count Dtype--- ------ -------------- -----0 CUSTOMER_ID 92425 non-null int641 COMPANY_NAME 92425 non-null object2 USER_ID 92425 non-null int643 CONSUME_TYPE 92425 non-null object4 CREATE_TIME 92425 non-null object5 BILL_NO_NUM 92425 non-null int646 CONSUME_NUM 92425 non-null float647 SHIP_AGENT 91583 non-null object8 FIRST 92425 non-null int64dtypes: float64(1), int64(4), object(4)memory usage: 6.3+ MB
def split_ship(x):if type(x) is str:return str(x[2:])
apply函数
df['SHIP_AGENT'] = df['SHIP_AGENT'].apply(split_ship)
df
| CUSTOMER_ID | COMPANY_NAME | USER_ID | CONSUME_TYPE | CREATE_TIME | BILL_NO_NUM | CONSUME_NUM | SHIP_AGENT | FIRST | |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 1456093696733167618 | 上海威万国际物流(集团)有限公司 | 1770786 | S | 2022-04-15 15:02:10 | 1 | 30.0 | 联合 | 0 |
| 1 | 33485 | 上海瀚源国际物流有限公司 | 1369829830081777664 | S | 2022-03-03 11:19:31 | 1 | 30.0 | 航华 | 0 |
| 2 | 8132883 | 安徽铁洋国际货运代理有限公司 | 1397838284587143168 | S | 2022-03-25 09:32:36 | 1 | 30.0 | 外代 | 0 |
| 3 | 36550 | 上海逸昂国际货运代理有限公司 | 4609 | S | 2022-04-04 16:14:17 | 1 | 30.0 | 联合 | 0 |
| 4 | 8134300 | 柠檬国际物流(深圳)有限公司 | 1503555855351881730 | S | 2022-04-12 09:42:16 | 1 | 30.0 | 中外运 | 0 |
| … | … | … | … | … | … | … | … | … | … |
| 92420 | 26979 | 上海纽奥德国际货物运输代理有限公司 | 1766758 | S | 2022-04-13 20:28:29 | 1 | 30.0 | 联合 | 0 |
| 92421 | 1396039781685751809 | 信立航国际物流(深圳)有限公司 | 1380388314149949440 | S | 2022-03-16 17:49:10 | 3 | 90.0 | 航华 | 0 |
| 92422 | 1291256592419532801 | 有象国际货运代理(上海)有限公司 | 1291208502446002176 | S | 2022-03-22 14:41:26 | 1 | 30.0 | 联合 | 0 |
| 92423 | 27734 | 上海创丰国际物流有限公司 | 405599 | S | 2022-04-03 10:10:00 | 1 | 30.0 | 鹏海 | 0 |
| 92424 | 1275696739731869697 | 华光源海国际物流(苏州)有限公司 | 176842 | S | 2022-03-31 17:29:09 | 1 | 30.0 | 鹏海 | 0 |
92425 rows × 9 columns
groupby
df.groupby(['COMPANY_NAME']).sum()
| CUSTOMER_ID | USER_ID | BILL_NO_NUM | CONSUME_NUM | FIRST | |
|---|---|---|---|---|---|
| COMPANY_NAME | |||||
| NEW WORLD AND GLOBE CO.,LTD. | 5.694569e+07 | 9.966581e+18 | 31.0 | 930.0 | 0.0 |
| 万为国际运输代理(上海)有限公司 | 1.717317e+19 | 1.717296e+19 | 12.0 | 360.0 | 0.0 |
| 万达杰诚国际物流 (北京)有限公司 | 1.842642e+19 | 1.842634e+19 | 17.0 | 570.0 | 0.0 |
| 万达杰诚国际物流(北京)有限公司上海分公司 | 1.768632e+19 | 1.999890e+07 | 57.0 | 1730.0 | 0.0 |
| 万达运通国际货运代理有限公司 | 2.787120e+06 | 1.396139e+20 | 738.0 | 23240.0 | 0.0 |
| … | … | … | … | … | … |
| 麦恩国际货运代理(上海)有限公司 | 4.254154e+18 | 4.292612e+18 | 3.0 | 110.0 | 0.0 |
| 黄国林 | 1.982463e+19 | 1.982171e+19 | 16.0 | 480.0 | 0.0 |
| 鼎海国际物流(上海)有限公司 | 6.530870e+05 | 3.764429e+07 | 23.0 | 690.0 | 0.0 |
| 鼎硕国际物流(南京)有限公司 | 1.297207e+19 | 1.297205e+19 | 9.0 | 330.0 | 0.0 |
| 鼎远国际物流(深圳)有限公司 | 2.693316e+18 | 2.840416e+18 | 3.0 | 90.0 | 0.0 |
2797 rows × 5 columns
df.groupby(['COMPANY_NAME']).agg(['max','min','mean','count','std'])
| CUSTOMER_ID | USER_ID | … | CONSUME_NUM | FIRST | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| max | min | mean | count | std | max | min | mean | count | std | … | max | min | mean | count | std | max | min | mean | count | std | |
| COMPANY_NAME | |||||||||||||||||||||
| NEW WORLD AND GLOBE CO.,LTD. | 8135099 | 8135099 | 8135099 | 7 | 0.0 | 1432541011762089984 | 1419923663435730944 | 1.423797e+18 | 7 | 5.152003e+15 | … | 270.0 | 60.0 | 132.857143 | 7 | 77.182529 | 0 | 0 | 0.0 | 7 | 0.0 |
| 万为国际运输代理(上海)有限公司 | 1431097415400099841 | 1431097415400099841 | 1431097415400099840 | 12 | 0.0 | 1431080245930364928 | 1431080245930364928 | 1.431080e+18 | 12 | 0.000000e+00 | … | 30.0 | 30.0 | 30.000000 | 12 | 0.000000 | 0 | 0 | 0.0 | 12 | 0.0 |
| 万达杰诚国际物流 (北京)有限公司 | 1417416681967149058 | 1417416681967149058 | 1417416681967149056 | 13 | 0.0 | 1417410914570866688 | 1417410914570866688 | 1.417411e+18 | 13 | 0.000000e+00 | … | 150.0 | 30.0 | 43.846154 | 13 | 33.050079 | 0 | 0 | 0.0 | 13 | 0.0 |
| 万达杰诚国际物流(北京)有限公司上海分公司 | 1473860052422258690 | 1473860052422258690 | 1473860052422258688 | 12 | 0.0 | 1666575 | 1666575 | 1.666575e+06 | 12 | 0.000000e+00 | … | 390.0 | 30.0 | 144.166667 | 12 | 115.006587 | 0 | 0 | 0.0 | 12 | 0.0 |
| 万达运通国际货运代理有限公司 | 14220 | 14220 | 14220 | 196 | 0.0 | 1486965157294977026 | 1482635 | 7.123159e+17 | 196 | 7.365653e+17 | … | 950.0 | 30.0 | 118.571429 | 196 | 186.717942 | 0 | 0 | 0.0 | 196 | 0.0 |
| … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … |
| 麦恩国际货运代理(上海)有限公司 | 1418051302728339458 | 1418051302728339458 | 1418051302728339456 | 3 | 0.0 | 1480795291371311104 | 1405908288519933952 | 1.430871e+18 | 3 | 4.323603e+16 | … | 50.0 | 30.0 | 36.666667 | 3 | 11.547005 | 0 | 0 | 0.0 | 3 | 0.0 |
| 黄国林 | 1321642131776036865 | 1321642131776036865 | 1321642131776036864 | 15 | 0.0 | 1321447527026921472 | 1321447527026921472 | 1.321448e+18 | 15 | 0.000000e+00 | … | 60.0 | 30.0 | 32.000000 | 15 | 7.745967 | 0 | 0 | 0.0 | 15 | 0.0 |
| 鼎海国际物流(上海)有限公司 | 34373 | 34373 | 34373 | 19 | 0.0 | 1985261 | 1978892 | 1.981278e+06 | 19 | 2.866298e+03 | … | 90.0 | 30.0 | 36.315789 | 19 | 16.059101 | 0 | 0 | 0.0 | 19 | 0.0 |
| 鼎硕国际物流(南京)有限公司 | 1441341340727267330 | 1441341340727267330 | 1441341340727267328 | 9 | 0.0 | 1441339077323526144 | 1441339077323526144 | 1.441339e+18 | 9 | 0.000000e+00 | … | 50.0 | 30.0 | 36.666667 | 9 | 10.000000 | 0 | 0 | 0.0 | 9 | 0.0 |
| 鼎远国际物流(深圳)有限公司 | 1346658108659605505 | 1346658108659605505 | 1346658108659605504 | 2 | 0.0 | 1420208223021043712 | 1420208223021043712 | 1.420208e+18 | 2 | 0.000000e+00 | … | 60.0 | 30.0 | 45.000000 | 2 | 21.213203 | 0 | 0 | 0.0 | 2 | 0.0 |
2797 rows × 25 columns
com_gro = df.groupby(by='COMPANY_NAME')com_gro.agg({'CONSUME_NUM': np.sum,'BILL_NO_NUM':[np.sum,np.mean]})
| CONSUME_NUM | BILL_NO_NUM | ||
|---|---|---|---|
| sum | sum | mean | |
| COMPANY_NAME | |||
| NEW WORLD AND GLOBE CO.,LTD. | 930.0 | 31 | 4.428571 |
| 万为国际运输代理(上海)有限公司 | 360.0 | 12 | 1.000000 |
| 万达杰诚国际物流 (北京)有限公司 | 570.0 | 17 | 1.307692 |
| 万达杰诚国际物流(北京)有限公司上海分公司 | 1730.0 | 57 | 4.750000 |
| 万达运通国际货运代理有限公司 | 23240.0 | 738 | 3.765306 |
| … | … | … | … |
| 麦恩国际货运代理(上海)有限公司 | 110.0 | 3 | 1.000000 |
| 黄国林 | 480.0 | 16 | 1.066667 |
| 鼎海国际物流(上海)有限公司 | 690.0 | 23 | 1.210526 |
| 鼎硕国际物流(南京)有限公司 | 330.0 | 9 | 1.000000 |
| 鼎远国际物流(深圳)有限公司 | 90.0 | 3 | 1.500000 |
2797 rows × 3 columns
