鱼C论坛

 找回密码
 立即注册
查看: 1815|回复: 1

[已解决]python 中多重条件同时满足代码

[复制链接]
发表于 2023-5-23 10:41:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
A        B        C
1                *
1                *
2        b        /
2        b        /
2        c        +


下单时间        发货时间
2023/4/28        2023/4/29
2023/4/28        2023/4/29
2023/4/28        2023/4/29
2023/4/28        2023/4/29
2023/4/28        2023/4/29


1,求C列,C列需要同时满足A列为2并B列为b显示“/”,A列为2并B列为c显示“+” ,A列为1时,不用管B列,C列默认“*”
2,求发货时间,已知下单时间,发货时间等于下单时间+1,并且保存到EXCEL格式还是日期格式
3,求和,要求A列满足1条件的求和,满足2条件的求和
最佳答案
2023-5-23 10:45:08
1. 可以使用pandas库来实现条件筛选和赋值操作。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 根据条件筛选并赋值df.loc[(df['A'] == 2) & (df['B'] == 'b'), 'C'] = '/'df.loc[(df['A'] == 2) & (df['B'] == 'c'), 'C'] = '+'df.loc[df['A'] == 1, 'C'] = '*'# 输出结果print(df)
2. 可以使用pandas库来实现日期的加减操作和格式转换。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 将下单时间转换为日期格式df['下单时间'] = pd.to_datetime(df['下单时间'], format='%Y/%m/%d')# 计算发货时间并转换为日期格式df['发货时间'] = df['下单时间'] + pd.Timedelta(days=1)df['发货时间'] = df['发货时间'].dt.date# 输出结果print(df)
3. 可以使用pandas库来实现条件筛选和求和操作。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 求和sum1 = df.loc[df['A'] == 1, 'A'].sum()sum2 = df.loc[df['A'] == 2, 'A'].sum()# 输出结果print('A列满足1条件的求和:', sum1)print('A列满足2条件的求和:', sum2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-23 10:45:08 | 显示全部楼层    本楼为最佳答案   
1. 可以使用pandas库来实现条件筛选和赋值操作。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 根据条件筛选并赋值df.loc[(df['A'] == 2) & (df['B'] == 'b'), 'C'] = '/'df.loc[(df['A'] == 2) & (df['B'] == 'c'), 'C'] = '+'df.loc[df['A'] == 1, 'C'] = '*'# 输出结果print(df)
2. 可以使用pandas库来实现日期的加减操作和格式转换。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 将下单时间转换为日期格式df['下单时间'] = pd.to_datetime(df['下单时间'], format='%Y/%m/%d')# 计算发货时间并转换为日期格式df['发货时间'] = df['下单时间'] + pd.Timedelta(days=1)df['发货时间'] = df['发货时间'].dt.date# 输出结果print(df)
3. 可以使用pandas库来实现条件筛选和求和操作。代码如下:
import pandas as pd# 读取数据df = pd.read_excel('data.xlsx')# 求和sum1 = df.loc[df['A'] == 1, 'A'].sum()sum2 = df.loc[df['A'] == 2, 'A'].sum()# 输出结果print('A列满足1条件的求和:', sum1)print('A列满足2条件的求和:', sum2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-27 11:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表