#数据清洗 #数据处理 #ETL #零代码平台 #数据分析 #数据可视化实验主题数据抽取——使用 ETL 抽取多种文件数据。实验工具在线实验平台 / ETL 数据集成平台。文章特点不是实验报告而是按照实际操作视频截图整理的“手把手教程”。在做数据分析、数据治理、用户画像、BI 可视化之前第一步往往不是建模也不是画图而是先把数据稳定地读进来。现实中的数据不一定都在数据库里很多时候会以CSV、TXT、Excel等文件形式存在。如果文件没有正确读取字段没有正确解析后面无论是清洗、计算还是可视化都会出问题。本篇文章以 ETL 平台为例完整演示如何抽取三类常见文件数据使用CSV 文件输入读取project.csv并计算项目工期与绩效等级使用CSV 文件输入读取带分号分隔的usa_201209.txt足球比赛文本数据使用Excel 输入读取custinfo.xlsx购房者信息数据并筛选核心字段。整篇文章会尽量把平台操作讲清楚点哪里、拖什么组件、组件之间怎么连、组件里填什么参数、为什么这样填、最后怎么验证结果。截图数量控制在 20 张以内方便公众号或博客发布。一、实验目标与整体流程本实验的目标不是简单“打开文件看一眼”而是要掌握在 ETL 中处理不同文件数据源的基本方法。三类文件对应三条处理路线。图1 实验整体流程三类文件数据抽取路线图1是本次实验的总体路线。可以看到实验分成三部分实验部分数据文件主要组件最终结果CSV 文件抽取与加工project.csvCSV 文件输入、字段选择、计算器、数值范围、文本文件输出生成project_output.csvTXT 文本文件抽取与筛选usa_201209.txtCSV 文件输入、字段选择、空操作预览剔除Venue后的数据Excel 文件抽取与字段筛选custinfo.xlsxExcel 输入、字段选择、空操作预览仅保留education、employment的数据其中CSV 流程最完整既有读取也有计算和输出TXT 流程重点在分隔符解析Excel 流程重点在文件选择、工作表选择和表头字段识别。二、实验数据准备从公共空间导入项目文件库在助睿 ETL 中文件数据通常要先放到当前项目的文件库中组件才能正常读取。本次实验的三个文件都来自平台公共空间所以第一步是把公共空间里的文件导出到自己的项目空间。2.1 进入数据集成模块并打开项目登录助睿在线实验平台后进入左侧导航栏中的“数据集成”。进入后找到“我的项目”点击当前实验项目右侧的...按钮选择“打开项目”。如果已经进入项目页面可以直接进行下一步。2.2 在公共空间中查找实验文件进入项目后切换到页面中的“公共空间”再进入“数据资源”标签页。在这里找到本次实验需要的文件project.csv usa_201209.txt custinfo.xlsx图2 公共空间中的实验数据文件图2展示的是公共空间中的实验数据文件。这里要注意公共空间只是公共资源位置文件还没有真正进入你的项目文件库所以不能直接在转换流里使用。2.3 将公共资源导出到项目文件库找到文件后点击文件右侧的“更多”按钮选择“导出”。在弹出的“导出数据资源到项目空间”窗口中确认文件名称和导出路径。建议导出路径选择根目录/这样后面在文件库中最容易找到。图3 将公共资源导出到项目文件库图3展示的是将公共资源导出到项目文件库的过程。导出时只需要确认文件和路径然后点击“确定”。2.4 在文件库中刷新并确认文件已导入导出完成后切换到左侧的“文件库”。如果没有立即看到文件可以右键空白处选择刷新或者点击页面刷新按钮。图4 文件库确认数据文件已导入图4表示文件已经进入当前项目文件库。只有完成这一步后续在CSV 文件输入或Excel 输入组件中才能选择这些文件。这一部分最常见的问题是明明在公共空间看到了文件但配置组件时找不到。原因通常就是没有执行“导出到项目文件库”。三、CSV 文件抽取与加工读取 project.csv计算工期并生成绩效等级CSV 文件部分是本实验最完整的一条 ETL 流程它包含文件读取、字段接收、日期计算、区间分级和结果输出。3.1 本部分要完成什么project.csv是项目工程信息数据核心字段包括project_name start_date end_date我们要基于start_date和end_date计算项目执行天数并生成一个新的绩效字段。最终新增字段包括新字段含义diff_date项目结束日期与开始日期之间的天数差performance根据项目天数划分的绩效等级完整组件链路为CSV文件输入 → 字段选择 → 计算器 → 数值范围 → 文本文件输出图5 CSV数据抽取与加工完整流程图5展示了 CSV 数据抽取与加工的完整画布。你在录视频或写博客时可以先展示这个总流程让读者知道后面每个组件的作用。3.2 新建转换流并拖入 CSV 文件输入组件进入“数据集成”页面点击新建转换流可以命名为CSV文件数据抽取与加工然后切换到“组件库”搜索并拖入CSV 文件输入拖到画布后双击该组件进入配置页面。3.3 配置 CSV 文件输入组件在 CSV 文件输入组件中点击“浏览文件”从文件库中选择project.csv选择完成后文件路径会自动回填到“文件名”输入框中。图6 CSV文件输入组件配置_project_csv配置时重点检查下面几个位置配置项推荐设置说明文件名project.csv从文件库选择不要手输错路径列分隔符英文逗号,CSV 文件一般用逗号分隔封闭符默认即可如果文件中字段带引号可保留默认设置包含列头行勾选表示第一行作为字段名编码UTF-8若乱码可尝试 GBK配置完文件后在组件下方字段区域右键选择“获取字段”。平台会自动读取 CSV 文件结构把第一行解析为字段名。如果没有获取字段后续字段选择、计算器等组件可能无法识别上游字段。3.4 预览 project.csv 原始数据字段获取完成后点击“预览”按钮查看读取结果。图7 project_csv原始项目数据预览图7中可以看到项目数据已经被读取出来字段包括项目名称、开始日期、结束日期。预览这一步非常重要因为它可以提前确认文件是否选对列分隔符是否正确表头是否被正确识别日期字段是否正常显示。如果预览时所有内容挤在一列说明分隔符可能不对如果字段名变成了第一行数据说明可能没有勾选“包含列头行”。3.5 添加字段选择组件并获取上游字段回到画布拖入“字段选择”组件连接CSV文件输入 → 字段选择如果弹出连接类型选择主输出步骤双击“字段选择”组件在“选择和修改”页签中右键空白区域选择“获取字段”。图8 CSV字段选择组件获取上游字段本实验中字段不需要改名也不需要删除所以获取字段后保持默认即可点击“确认”。这里保留字段选择组件的原因是它相当于一个字段整理节点。后续如果要修改字段名、字段顺序、字段类型都可以在这里完成。即使本次不修改字段放在流程中也能让结构更清楚。3.6 添加计算器组件计算 diff_date接下来拖入“计算器”组件连接字段选择 → 计算器双击“计算器”进入配置界面点击“插入”新增一行计算规则。按照下面配置配置项设置内容新字段diff_date计算Date A - Date B (in days)字段Aend_date字段Bstart_date值类型Integer图9 计算器组件计算_diff_date这一行配置的意思是diff_date end_date - start_date也就是用项目结束日期减去项目开始日期得到项目持续天数。这里一定要注意字段顺序字段A 选 end_date 字段B 选 start_date如果反过来计算出的天数可能是负数。配置完成后点击“确认”。3.7 添加数值范围组件生成 performance 分级拖入“数值范围”组件连接计算器 → 数值范围双击组件进入配置页面。输入字段选择diff_date输出字段填写performance然后配置绩效等级规则下界上界输出值030excellent30180very good180360good360留空poor图10 数值范围组件配置_performance分级这个组件的作用是把一个连续数值字段转换成业务标签。diff_date是天数不够直观performance是等级更方便后续理解和分析。需要注意数值范围通常表示“最小值 ≤ x 最大值”。所以 30 到 180 表示大于等于 30 且小于 180 的范围。配置完成后点击“确认”。3.8 添加文本文件输出组件导出 project_output.csv最后拖入“文本文件输出”组件连接数值范围 → 文本文件输出双击组件进入配置界面。在“文件”页签中配置配置项设置文件名称project_output扩展名csv这表示最终输出文件名为project_output.csv然后切换到“内容”页签把字段分隔符设置为英文逗号,再切换到“字段”页签在字段区域右键选择“获取字段”让输出组件自动获取上游全部字段。图11 文本文件输出组件配置_CSV结果文件获取字段后输出字段中应包含project_name start_date end_date diff_date performance确认无误后点击“确认”。3.9 运行 CSV 流程并查看 project_output回到画布点击左上角“运行”按钮在弹出的窗口中点击“启动”。运行过程中可以观察底部日志。如果流程没有报错组件状态正常就说明运行成功。运行完成后到文件库中查看生成的project_output.csv图12 CSV流程运行结果_project_output图12展示了输出结果。可以看到原始项目数据后面已经新增了diff_date和performance字段。比如工期较短的项目会被标记为excellent工期较长的项目可能被标记为poor。到这里CSV 文件抽取、计算和输出就完成了。四、TXT 文件抽取与筛选读取 usa_201209.txt 并删除 Venue 字段第二部分处理 TXT 文件。很多同学会疑惑TXT 文件为什么也用 CSV 文件输入组件原因是这个 TXT 文件本质上是按分隔符排列的结构化文本只要设置正确分隔符就可以用 CSV 文件输入组件解析。4.1 本部分要完成什么文件名usa_201209.txt任务目标1. 使用 CSV 文件输入组件读取 TXT 文件 2. 将列分隔符设置为英文分号 ; 3. 获取字段并预览数据 4. 使用字段选择组件移除 Venue 字段 5. 使用空操作组件预览最终结果。完整流程CSV文件输入 → 字段选择 → 空操作什么也不做图13 TXT足球比赛数据抽取流程图13展示了 TXT 数据抽取流程。它比 CSV 流程短很多因为本部分不需要计算字段也不需要输出新文件只需要验证读取和字段筛选是否成功。4.2 新建 TXT 数据抽取转换流在数据集成页面中新建转换流可以命名为TXT足球比赛数据抽取与筛选在组件库中拖入CSV文件输入 字段选择 空操作什么也不做按照顺序连接CSV文件输入 → 字段选择 → 空操作什么也不做连接时选择“主输出步骤”。4.3 配置 CSV 文件输入读取 TXT 文件双击“CSV 文件输入”组件点击“浏览文件”选择usa_201209.txt然后重点配置列分隔符。本文件使用英文分号分隔因此列分隔符填写;同时勾选包含列头行图14 TXT文件输入配置_分号解析图14展示了 TXT 文件输入配置。这里最关键的是分隔符。如果分隔符仍然用逗号平台就无法正确拆分字段预览时很可能所有内容都挤在一列里。配置完成后在下方字段区域右键选择“获取字段”。获取字段后可以点击“确认”也可以先点击“预览”查看数据。4.4 预览 TXT 数据解析结果选中 CSV 文件输入组件右键选择“预览输出”查看 TXT 数据是否被正确解析。图15 TXT数据预览_足球比赛字段解析结果图15展示了足球比赛数据预览结果。可以看到数据已经被解析为表格字段中包含比赛日期、国家、比分等信息。这一页主要检查三件事1. 是否成功读取 usa_201209.txt 2. 分号是否正确拆分字段 3. 第一行是否被识别为字段名。如果你看到的是一整串文本挤在一列里就回到组件配置中检查列分隔符是否为英文分号。4.5 配置字段选择组件移除 Venue 字段接下来双击“字段选择”组件。在配置窗口中切换到“移除”页签。操作步骤1. 在移除页签的字段区域右键 2. 选择“获取字段” 3. 删除不需要移除的字段 4. 最终只保留 Venue 字段在移除列表中。图16 TXT字段选择组件移除_Venue字段图16展示了移除Venue字段的配置。这里的含义是数据经过字段选择组件后Venue字段会被删除不再传递给下游的空操作组件。为什么删除Venue因为本实验重点是赛事日期、国家、比分等核心字段场地字段暂时不参与分析所以可以剔除减少后续数据结构复杂度。配置完成后点击“确认”。4.6 运行 TXT 流程并通过空操作预览结果回到画布点击运行并启动转换。运行完成后选中“空操作什么也不做”组件右键选择“预览”或“预览输出”。图17 TXT空操作组件预览筛选结果图17展示了经过字段筛选后的结果。这里应重点检查Venue字段是否已经消失。空操作组件虽然名字叫“什么也不做”但它在实验中非常有用1. 可以作为流程终点 2. 可以接收上游处理结果 3. 可以通过预览验证字段筛选是否生效。到这里TXT 文件读取、分号解析、字段删除和结果验证就完成了。五、Excel 文件抽取与预处理读取 custinfo.xlsx 并筛选核心字段第三部分处理 Excel 文件。Excel 和 CSV/TXT 不同它有工作表、表头、单元格结构因此需要使用专门的Excel 输入组件。5.1 本部分要完成什么文件名custinfo.xlsx任务目标1. 使用 Excel 输入组件读取文件 2. 添加 custinfo.xlsx 到选中文件列表 3. 设置头部、非空记录和编码 4. 获取工作表名称并选择 Sheet1 5. 从表头获取字段 6. 使用字段选择组件仅保留 education 和 employment 7. 使用空操作组件预览最终结果。完整流程Excel输入 → 字段选择 → 空操作什么也不做图18 Excel数据抽取与字段筛选完整流程图18展示了 Excel 文件读取流程。它看起来和 TXT 流程类似但 Excel 输入组件的配置更复杂。5.2 新建 Excel 文件抽取转换流在数据集成中新建转换流可以命名为Excel购房者信息数据抽取从组件库拖入Excel输入 字段选择 空操作什么也不做连接Excel输入 → 字段选择 → 空操作什么也不做连接时选择“主输出步骤”。5.3 配置 Excel 输入组件选择并添加 custinfo.xlsx双击“Excel 输入”组件。在“文件”页签中点击“浏览”从文件库中选择custinfo.xlsx选择后还要点击添加把文件加入“选中的文件”列表。图19 Excel输入组件配置_custinfo_xlsx图19展示了 Excel 输入组件配置。这里有一个非常容易漏掉的点选择文件后必须点击“添加”。如果只是浏览选中了文件但没有添加到列表中组件后续可能不会真正读取这个文件。文件引擎一般选择Excel XLSX (Streaming)它适合读取.xlsx文件。5.4 配置内容页签表头、非空记录和编码切换到“内容”页签配置配置项设置头部勾选非空记录勾选编码UTF-8“头部”表示第一行是字段名“非空记录”表示跳过空白记录编码使用 UTF-8可以避免大多数中文或特殊字符读取异常。如果后续读取出现乱码可以回到这里检查编码。5.5 配置工作表页签选择 Sheet1切换到“工作表”页签点击获取工作表名称系统会读取 Excel 文件中的工作表列表。在弹出的选择窗口中勾选Sheet1然后点击中间的右箭头把Sheet1加入右侧列表点击“确定”。这一步表示本流程只读取Sheet1中的数据。如果 Excel 文件中有多个工作表这一步尤其重要。选错工作表后面的字段和数据都会不对。5.6 配置字段页签从头部获取字段切换到“字段”页签在空白区域右键选择获取来自头部的字段平台会根据Sheet1第一行识别字段名和字段类型。此时可以看到类似字段age sex education salary employment people house...确认字段识别正常后点击“确认”。5.7 配置字段选择组件只保留 education 和 employment双击“字段选择”组件。在“选择和修改”页签中右键获取上游字段。然后只保留两个字段education employment删除其他字段。这样做的目的是把原始购房者信息表中暂时不需要的字段剔除只保留本实验指定的核心分析字段。education表示学历employment表示就业情况。这两个字段可以为后续用户画像、购房者分类、行为分析等任务提供基础。5.8 运行 Excel 流程并预览结果配置完成后点击运行并启动转换。运行成功后选中“空操作什么也不做”组件右键选择“预览输出”。图20 Excel字段筛选与最终预览结果图20展示了 Excel 筛选后的最终结果。可以看到输出结果只包含education employment这说明1. custinfo.xlsx 读取成功 2. Sheet1 工作表选择正确 3. 表头字段识别成功 4. 字段选择组件筛选生效 5. 数据可以正常传递到流程末端。如果最终预览中没有数据优先检查是否添加了 Excel 文件、是否选择了 Sheet1、是否勾选了头部。六、三类文件处理方式对比完成 CSV、TXT、Excel 三部分后可以总结出三类文件在助睿 ETL 中的处理差异。对比项CSV 文件TXT 文件Excel 文件文件示例project.csvusa_201209.txtcustinfo.xlsx输入组件CSV 文件输入CSV 文件输入Excel 输入关键配置逗号分隔、包含列头行分号分隔、包含列头行文件添加、头部、非空记录、Sheet1核心处理计算diff_date生成performance移除Venue字段保留education、employment结果验证输出project_output.csv空操作预览空操作预览易错点日期字段顺序、数值范围规则分隔符设置错误忘记添加文件或选择工作表可以简单记成CSV重点看字段计算和输出文件 TXT重点看分隔符是否正确 Excel重点看文件是否添加、工作表是否选对、表头是否识别。七、常见问题排查7.1 公共空间有文件但组件中找不到文件原因文件还没有导出到项目文件库。解决方法公共空间 → 数据资源 → 文件右侧更多 → 导出 → 选择项目路径 → 确定 → 文件库刷新7.2 CSV 或 TXT 数据预览时所有内容挤在一列原因列分隔符设置错误。解决方法project.csv 使用英文逗号 , usa_201209.txt 使用英文分号 ;设置完成后重新“获取字段”。7.3 字段名没有正确识别原因没有勾选“包含列头行”或“头部”。CSV/TXT 中检查包含列头行Excel 中检查头部7.4 CSV 中 diff_date 计算结果异常检查计算器组件计算方式Date A - Date B (in days) 字段Aend_date 字段Bstart_date 值类型Integer字段 A 和字段 B 不能反。7.5 performance 没有正确生成检查数值范围组件输入字段是否为 diff_date 输出字段是否为 performance 区间规则是否完整 360 以上是否设置为 poor7.6 TXT 中 Venue 字段仍然存在检查字段选择组件是否切换到“移除”页签并确认Venue字段在移除列表中。7.7 Excel 读取不到数据重点检查四个位置1. 文件页签中是否点击“添加” 2. 内容页签是否勾选“头部”和“非空记录” 3. 工作表页签是否选择 Sheet1 4. 字段页签是否执行“获取来自头部的字段”。7.8 空操作组件是不是多余不多余。空操作组件虽然不处理数据但它可以作为流程终点用于预览上游结果非常适合验证 TXT 和 Excel 流程是否成功。八、完整操作路线回顾最后用一条路线回顾本次实验图21 实验整体流程图九、实验总结本次实验完整演示了如何使用助睿 ETL 平台抽取 CSV、TXT、Excel 三类文件数据。通过这个实验可以明显体会到不同文件格式虽然读取组件和配置方式不同但 ETL 的基本思想是相通的。对于 CSV 文件我们重点完成了从原始项目日期到业务评价字段的转换。diff_date让项目周期变成可计算指标performance让项目周期进一步变成可理解的业务标签。对于 TXT 文件我们重点掌握了分隔符解析。即使文件扩展名是.txt只要内部是规则化文本就可以通过 CSV 文件输入组件读取。关键在于正确设置列分隔符。对于 Excel 文件我们重点掌握了 Excel 输入组件的配置逻辑。Excel 文件不是简单的一行一行文本它涉及工作表、表头、编码和字段识别所以配置时要按照“文件、内容、工作表、字段”的顺序逐项检查。这次实验的核心收获可以概括为文件先进入项目字段先正确解析处理再逐步完成结果最后必须验证。只有把数据抽取这一步做稳后面的数据清洗、用户画像、数据建模、BI 可视化才有可靠的数据基础。