You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于Type列生成连字符格式连续数字的Pandas DataFrame?

解决方案

1. 定义映射规则

先创建Type到目标区间的映射关系,两种方式可选:

# 方式一:直接映射最终字符串(适合规则固定场景)
type_mapping = {
    'Double': '2-3',
    'Three': '4-6'
}

# 方式二:存储区间起止数值(适合后续规则扩展,动态生成字符串)
type_range_rules = {
    'Double': (2, 3),
    'Three': (4, 6)
}

2. 处理DataFrame

假设你已有包含Type列的DataFrame,用Pandas的map或apply快速生成目标列:

方法一:直接映射字符串

import pandas as pd

# 示例原始DataFrame(包含你的序列号列)
df = pd.DataFrame({
    'Serial_No': [1, 2, 3, 4],
    'Type': ['Double', 'Three', 'Double', 'Three']
})

# 生成Number_Range列
df['Number_Range'] = df['Type'].map(type_mapping)

方法二:动态生成区间字符串

如果后续需要调整区间规则,只需修改起止数值即可:

df['Number_Range'] = df['Type'].apply(lambda x: f"{type_range_rules[x][0]}-{type_range_rules[x][1]}")

3. 处理异常情况

如果Type列存在未定义的取值,用fillna填充默认值:

df['Number_Range'] = df['Type'].map(type_mapping).fillna('未定义')

最终结果示例

处理后的DataFrame结构如下:

Serial_NoTypeNumber_Range
1Double2-3
2Three4-6
3Double2-3
4Three4-6

内容的提问来源于stack exchange,提问作者ashnaa1610

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 06:42:10