如何拆分CSV数据:实现多选项行拆分并保留关联字段
解决CSV数据拆分多行并保留关联字段的问题
一、Jupyter Notebook(Python Pandas)实现方法
你已经导入了数据,接下来只需要两步就能完成拆分:
- 先把
Where do you hear our company from?列按分号拆分,转为列表格式 - 用explode方法将列表拆分为多行,同时保留其他字段的关联关系
完整代码如下:
import pandas as pd # 导入数据(你已经完成这一步) data = pd.read_csv('Untitled form.csv') # 拆分目标列,注意要去除拆分后每个选项的空格 data['Where do you hear our company from?'] = data['Where do you hear our company from?'].str.split(';\s*') # 拆分列表为多行,保留其他字段 result = data.explode('Where do you hear our company from?') # 查看结果或保存 print(result) # 保存为新CSV result.to_csv('split_result.csv', index=False)
解释:str.split(';\s*')里的\s*是为了处理分号后面可能带有的空格,确保拆分后的选项没有多余空格;explode方法会自动把列表中的每个元素拆成单独一行,同时对应保留AgeGroup和How long have you using our platform?的原有数据。
二、Excel实现方法(用Power Query)
普通的分列功能做不到拆分行,用Power Query可以轻松实现:
- 打开Excel,导入你的CSV数据(数据选项卡 → 获取数据 → 从文件 → 从CSV)
- 在Power Query编辑器中,选中
Where do you hear our company from?列 - 点击「转换」选项卡 → 「拆分列」→ 「按分隔符」,选择分号作为分隔符,拆分方式选「拆分为行」
- 点击「主页」选项卡 → 「关闭并上载」,结果就会导入到新的工作表中,自动保留其他字段的关联关系
内容的提问来源于stack exchange,提问作者Maverick Subarjan
相关产品推荐
相关产品推荐

