对excel的列数据按规则分拆
excel数据如下管线号 焊缝编号 焊接类型 主要信息
CA-03-15-A1B-N S1 BW 蠁60.3*4.0,S30408-
CA-03-15-A1B-N S2 BW 蠁60.3*4.0,S30408-
需要对列“主要信息”的数据进行分拆
1,将列“焊缝编号 ”的第一个字符去除 ,如“S1”改为“1”
2,将列“焊接类型”的数据进行替换, 内容为“BW”或者“GW”的替换为“对焊”,内容为“SW”或者“SOL”的替换为“承插焊”
3,将列“主要信息”的“蠁60.3*4.0,S30408-”把最后一个","后的文字 "S30408-",录入到列“焊缝前材质” ,列“焊缝后材质”
将列“主要信息”的“蠁60.3*4.0,S30408-”把“60.3",录入到列“主管外径” ,从第二位开始,到符合”*“结束。
将列“主要信息”的“蠁60.3*4.0,S30408-”把“4.0",录入到列“壁厚 ,从”*“侯开始,到”,“结束。
好的,以下是具体的操作步骤:
1. **去除焊缝编号的第一个字符:**
- 原始数据:`S1`、`S2`
- 修改后:`1`、`2`
2. **替换焊接类型数据:**
- `BW`、`GW` 替换为 `对焊`
- `SW`、`SOL` 替换为 `承插焊`
3. **拆分主要信息列:**
- `主要信息` 列的数据 `60.3*4.0,S30408-` 将被拆分为以下几列:
- **焊缝前材质** 和 **焊缝后材质**: 提取 `S30408-`
- **主管外径**:提取 `60.3`
- **壁厚**:提取 `4.0`
下面是如何使用Excel公式来处理这些步骤:
### 1. 去除焊缝编号的第一个字符
假设焊缝编号在B列,C2单元格:
=RIGHT(B2, LEN(B2) - 1)
### 2. 替换焊接类型数据
假设焊接类型在C列,D2单元格:
=IF(OR(C2="BW", C2="GW"), "对焊", IF(OR(C2="SW", C2="SOL"), "承插焊", C2))
### 3. 拆分主要信息列
假设主要信息在D列,我们可以使用以下公式来提取相应的数据:
- **焊缝前材质** 和 **焊缝后材质** (G列,H列)
=TRIM(MID(D2, FIND(",", D2) + 1, LEN(D2)))
- **主管外径** (I列)
=TRIM(LEFT(D2, FIND("*", D2) - 1))
- **壁厚** (J列)
=TRIM(MID(D2, FIND("*", D2) + 1, FIND(",", D2) - FIND("*", D2) - 1))
按这些步骤在Excel中设置好公式,即可自动将数据拆分并替换。希望这些步骤能帮助到你!如果有任何问题,请随时询问。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 可以按照以下步骤来处理Excel中的数据:
1. 删除焊缝编号的第一个字符:
- 使用Excel公式:`=RIGHT(A2, LEN(A2) - 1)`(假设焊缝编号在A列,行号从2开始)。
2. 替换焊接类型:
- 使用公式:`=IF(B2="BW", "对焊", IF(B2="GW", "对焊", IF(B2="SW", "承插焊", IF(B2="SOL", "承插焊", B2))))`(假设焊接类型在B列)。
3. 分拆主要信息:
- 焊缝前材质:
- 使用公式:`=TRIM(RIGHT(D2, LEN(D2) - FIND(",", D2)))`(假设主要信息在D列)。
- 主管外径:
- 使用公式:`=MID(D2, FIND("蠁", D2) + 1, FIND("*", D2) - FIND("蠁", D2) - 1)`。
- 壁厚:
- 使用公式:`=MID(D2, FIND("*", D2) + 1, FIND(",", D2) - FIND("*", D2) - 1)`。
将这些公式输入到相应的列中,然后向下拖动填充以处理所有数据。这样就可以完成数据的分拆和替换了。 excel有些情况下用脚本比较方便
有些情况下用自带的公式比较方便
要灵活使用 已经改好了,还是用的pandas 颂风侯 发表于 2024-10-1 22:05
已经改好了,还是用的pandas
一般处理表格都是用Dataframe
页:
[1]