我将在R中生成一个大矩阵(数据帧),其大小约为1300000 * 10000,大约50 GB。我想以适当的格式存储这个矩阵,所以稍后我可以将数据提供给Python或其他程序代码进行一些分析。当然我不能一次提供数据,所以我必须对矩阵进行子集并一点一点地提供它们。 但我不知道如何存储矩阵。我想到了两种方式,但我认为两种方式都不合适: (1)纯文本(包括csv或excel表),因为它很难进行子集化(例如,如果我只想要一些列和一些数据行) (2)数据库,我搜索过有关mysql和sqlite的信息,但似乎列数限制在sql数据库(1024)中。 所以我只想知道是否有任何好的策略来存储数据,这样我就可以按行/列索引或名称对数据进行子集化。
答案 0 :(得分:0)
为您需要搜索/过滤的几个列中的每一列都有单独的列。然后将整个10K列放入一些方便客户端代码解析的数据格式。 JSON是一种常见的可能性。
因此该表将是1.3M行,也许是3列:id
(auto_increment,主键),列搜索和JSON blob - 作为数据类型JSON
或{{1} (取决于软件版本)许多数据值。