要按列的值拆分CSV文件,可以使用Apache Nifi提供的一些处理器,如SplitText和EvaluateJsonPath。下面是一个包含代码示例的解决方法:
使用GetFile处理器从文件系统中读取CSV文件。
使用SplitText处理器将CSV文件拆分为每一行。
使用EvaluateJsonPath处理器将每一行拆分为列。
使用SplitJson处理器将每一行的列拆分为单独的流文件。
使用PutFile处理器将拆分后的文件写入文件系统中。
以下是一个基于Apache Nifi的示例流程的XML代码:
cd1e2a95-529a-1c3e-aaaa-4bcb4c3b1ce4
CSV Split
250.0
250.0
1d0f0f8e-015a-1000-0000-00004689e8b6
GetFile
250.0
300.0
File Name
/path/to/input.csv
Input Directory
/path/to/input/directory
1d0f0f8e-015a-1000-0001-00004689e8b6
SplitText
500.0
300.0
Split Strategy
Line Split
Line Split
\n
1d0f0f8e-015a-1000-0002-00004689e8b6
EvaluateJsonPath
750.0
300.0
Destination
flowfile-attribute
Return Type
json
Attributes to JSON
{"column1": "$.column1", "column2": "$.column2"}
1d0f0f8e-015a-1000-0003-00004689e8b6
SplitJson
1000.0
300.0
JsonPath
column1
Output Split Delimiter
<
上一篇:按列的一对一对将数据框拆分为子集
下一篇:按列的值进行分组