如何在python中从csv文件构建带有边框的表格

Posted

技术标签:

【中文标题】如何在python中从csv文件构建带有边框的表格【英文标题】:how to bulid table with borders from csv file in python 【发布时间】:2020-09-05 08:09:31 【问题描述】:

我得到了如下所示的 csv 文件:

indiv_number,genename,to_append
0,gene1,[000011]
0,gene2,[101010]
0,gene3,[0101010]
1,gene1,[0101010]
1,gene2,[0101010]

我希望它看起来像这样:

                gene1       gene2       gene3 
indiv_number 

0             [000011]    [101010]     [0101010]
1             [0101010]   [0000]       [010101]
3             [1010101]    [01010]     [00011]

如何做到这一点

【问题讨论】:

如果您使用pandas.to_csv(filename),您需要使用可以呈现逗号分隔值的程序(如 excel 或 libre office)打开它。您的第一个输出是一个有效的 csv 文件,但看起来您使用记事本等常规文本编辑器打开了它.. 你注意到两个表之间的区别了吗?我需要将内容从列转换为行,这意味着 csv 中的第二列是第二列中的标题 你根本没有提到你是如何得到这些输出的。请查看在 SO here 上提问的指南 第一个输出与我的想象有关,它们都不是真实的,概念是如何在表格之间转换或如何将csv文件更改为类似于第二个结构的表格 【参考方案1】:

首先使用pandas.DataFrame.pivot 将您的数据框转换为所需的结构。然后使用pandas.DataFrame.to_csv 将其与标题和索引(列名和行名)一起保存。

【讨论】:

我已经做了这一步,但是当试图显示保存到 csv 的 df 的输出时,一切都是混合的

以上是关于如何在python中从csv文件构建带有边框的表格的主要内容,如果未能解决你的问题,请参考以下文章

我可以在 python3 中从 excel 文件(不是 CSV)创建字典吗?

如何在python中从一个日期访问另一个日期的csv数据[重复]

如何在 Postgresql 上将表格导出为带有标题的 CSV?

在 python 中从模板文件和 csv 数据生成输出文件

在 Python 中从 CSV 文件创建混合图表

在 Python 中从 CSV 文件创建混合图表