python笔记:4.2.2对订单明细表的一部分操作

# -*- coding: utf-8 -*-
"""
Created on Sat Jun  1 19:21:30 2019

@author: User
"""


import pandas as pd

print("\n 订单明细,注意这个ddmx.csv文件字段名称是中文所以需要utf8格式:")
ddmx=pd.read_csv('data\ddmx.csv')

print(ddmx.head(10))
#print(ddmx.info())
print("以上是数据准备----------------------------")

#print("\n 查询订单ID是51,52,53,54,55的行:")
#ddmx_s=ddmx.loc[ddmx['产品ID'].isin([51,52,53,54,55])] # 这句生成的是视图,所以下面增加标签会出错
#ddmx_s['产品']=ddmx_s['产品ID'].astype('category')

print("\n 生成订单ID是51,52,53,54,55的行的副本:")
ddmx_s=ddmx.loc[(ddmx['产品ID']>=51) & (ddmx['产品ID']<=55)].copy() # 这句生成的是副本,所以下面增加标签不会出错
print(ddmx_s.head())
#print(ddmx_s.info())

print("\n 对 产品ID 列增加标签列 产品:")
ddmx_s['产品']=ddmx_s['产品ID'].astype('category')
ddmx_s['产品'].cat.categories=['玉米饼','猪肉干','三合一麦片','盐水鸭','鸡肉']
print(ddmx_s.head())


#ddmx_group=ddmx_s.groupby(ddmx_s['产品'])
#print(ddmx_group['数量'].agg('sum'))

运行:

 订单明细,注意这个ddmx.csv文件字段名称是中文所以需要utf8格式:
    订单ID  产品ID    单价  数量    折扣
0  10248    17  14.0  12  0.00
1  10248    42   9.8  10  0.00
2  10248    72  34.8   5  0.00
3  10249    14  18.6   9  0.00
4  10249    51  42.4  40  0.00
5  10250    41   7.7  10  0.00
6  10250    51  42.4  35  0.15
7  10250    65  16.8  15  0.15
8  10251    22  16.8   6  0.05
9  10251    57  15.6  15  0.05
以上是数据准备----------------------------

 生成订单ID是51,52,53,54,55的行的副本:
     订单ID  产品ID    单价  数量    折扣
4   10249    51  42.4  40  0.00
6   10250    51  42.4  35  0.15
18  10254    55  19.2  21  0.15
24  10256    53  26.2  15  0.00
84  10280    55  19.2  20  0.00

 对 产品ID 列增加标签列 产品:
     订单ID  产品ID    单价  数量    折扣     产品
4   10249    51  42.4  40  0.00    玉米饼
6   10250    51  42.4  35  0.15    玉米饼
18  10254    55  19.2  21  0.15     鸡肉
24  10256    53  26.2  15  0.00  三合一麦片
84  10280    55  19.2  20  0.00     鸡肉
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值