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

如何将DataFrame中以x为分隔符的字符串列拆分为三列并转换为整数

问题解决方案

1. 拆分WxLxH字符串列为独立整数列

你之前尝试失败大概率是没有处理分隔符x前后的空格,优先推荐使用pandas向量化字符串操作实现,无需自定义apply函数,性能更高:

# \s*x\s* 正则匹配x前后任意数量的空格,直接拆分并转换为整数类型
df[['width', 'length', 'height']] = df['W_X_L_X_H'].str.split(r'\s*x\s*', expand=True).astype(int)

如果需要使用apply写法实现,参考如下代码:

import pandas as pd

def split_dimension(dim_str):
    # 拆分后依次转整数
    w, l, h = map(int, dim_str.split('x'))
    return pd.Series([w, l, h])

df[['width', 'length', 'height']] = df['W_X_L_X_H'].apply(split_dimension)

运行后即可得到三个独立的int类型列,可直接用于后续数值计算。

2. 保留WxLxH格式同时用于数值分析的可行性说明

不存在符合需求的实现方式:
整数类型为单值类型,无法同时存储三个独立数值且保留WxLxH的字符串格式。如果需要计算相关矩阵,宽、长、高本身是三个独立的特征,必须拆分为三个独立数值列分别参与计算,才能得到准确的相关性结果。
如果同时有展示和数值计算需求,可保留原有的W_X_L_X_H字符串列,同时新增三个数值列即可,两类字段互不影响。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 13:27:00