单元格R值求和及基于酒店客房床型计算房间容纳人数方法求助
没问题,这两个需求都很常见,我来一步步给你落地的解决方案:
1. 对单元格R中的值求和
具体方法看你用的工具:
- Excel/Google Sheets:直接用SUM函数就行。如果要对整列求和,输入
=SUM(R:R);如果要排除表头(比如表头在R1),可以指定范围=SUM(R2:R1000)(或者用动态范围=SUM(R2:INDEX(R:R,COUNTA(R:R)))自动适配数据长度)。 - Python Pandas:假设你的数据集存在DataFrame
df里,对应列名为R,直接调用求和方法:total = df['R'].sum() # 如果列里有空值,默认会自动跳过,要是想明确指定可以加参数 total = df['R'].sum(skipna=True)
2. 根据床型计算客房可容纳人数
这个需求的核心是先明确床型→人数的映射规则,我先给你一套通用规则做参考,你可以根据实际数据集调整:
单人床(Single/Twin)→1人;双人床(Double/Queen)→2人;家庭床(Family/King)→3-4人;上下铺(Bunk)→2人
然后分工具实现:
- Excel/Google Sheets:
方案一(推荐,方便后续修改映射):先做一个映射对照表(比如在Sheet2的A列存床型,B列存对应人数),然后在主数据列用VLOOKUP匹配:=VLOOKUP(床型单元格, Sheet2!A:B, 2, FALSE)
方案二(无需额外表):用IF嵌套直接判断(适合映射规则简单的情况):=IF(A2="单人床",1,IF(A2="双人床",2,IF(A2="家庭床",3,0)))
(最后面的0用来标记未知床型,你可以改成"未知"或者其他值) - Python Pandas:
先创建映射字典,再用map方法批量转换:# 先定义床型映射规则,按需修改 bed_capacity_map = { '单人床': 1, '双人床': 2, '家庭床': 3, '上下铺': 2 } # 生成新列存储可容纳人数,未知床型填充0 df['可容纳人数'] = df['床型列'].map(bed_capacity_map).fillna(0)
内容的提问来源于stack exchange,提问作者Bas van der Bijl
相关产品推荐
相关产品推荐

