首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并TSV文件以创建新的TSV for Apache Arrow表

合并TSV文件以创建新的TSV for Apache Arrow表
EN

Stack Overflow用户
提问于 2020-09-17 08:55:27
回答 1查看 154关注 0票数 0

我有两个TSV文件(header.tsv和data.tsv),header.tsv保存1000+列名,data.tsv保存大约50K条记录(也有NULL列值)。我想通过将data.tsv文件附加到header.tsv来创建一个新的TSV文件(比方说combined.tsv)。这样做的原因是要创建最后一个TSV文件,它可以将列名和数据保存在一起,并尝试在创建Apache Arrow表时避免出现错误。

代码语言:javascript
复制
**header.tsv**
field1 field2 field3 field4 ... field1000 

**data.tsv**
eng-en    1er2p  NULL  ert,yu1  ...  2020-09-16
frnch-fr  2er3p  NULL  ert,yu2  ...  2020-09-16
.
.
.
ltn-lt    50Ker  NULL  ert,yu50K ... 2020-09-16

所需的TSV

代码语言:javascript
复制
**combined.tsv**
field1    field2   field3   field4    ...   field1000
eng-en    1er2p    NULL     ert,yu1   ...   2020-09-16
frnch-fr  2er3p    NULL     ert,yu2   ...   2020-09-16
.
.
.
ltn-lt    50Ker    NULL     ert,yu50K ...   2020-09-16

我使用过SHELL命令,比如

代码语言:javascript
复制
paste header.tsv data.tsv > combined.tsv

然后尝试创建一个pyarrow表。

代码语言:javascript
复制
import pyarrow as pa
import pyarrow.csv as csv
combined = csv.read_csv('combined.tsv',parse_options=csv.ParseOptions(delimiter="\t"))

我在执行上面的代码时遇到了下面的错误

代码语言:javascript
复制
ArrowInvalid: CSV parse error: Expected 2010 columns, got 1006

header.tsv文件正好有1005列,可以解析该header.tsv文件来创建一个pyarrow表,但不能创建data.tsv文件。

代码语言:javascript
复制
import pyarrow as pa
import pyarrow.csv as csv
header = csv.read_csv('headers.tsv',parse_options=csv.ParseOptions(delimiter="\t")) 
head_show=header.to_pandas()
head_show.head()

我甚至尝试通过执行以下操作来使用pyarrow中的concat_tables方法

代码语言:javascript
复制
import pyarrow as pa
final_combined = pa.concat_tables(header,data)

错误

代码语言:javascript
复制
TypeError: Cannot convert pyarrow.lib.ChunkedArray to pyarrow.lib.Table

如果我的方法是错误的,请纠正我。

EN

回答 1

Stack Overflow用户

发布于 2020-09-17 15:08:18

要创建组合的CSV,您需要连接报头和数据:

代码语言:javascript
复制
cat header.csv data.csv > combined.csv

使用“粘贴”将执行“水平”连接-合并第一,第二,第三,...每个文件中的行,形成长行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63929798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档