Python:从CSV数据创建懒惰数据库?

7 投票
3 回答
8398 浏览
提问于 2025-04-16 15:23

我有一个相对较小的数字CSV数据集(少于10万条),我想用一些numpy和pylab工具来处理和绘制图表。我突然想到,处理这些数据的方法可能不应该是那种复杂的if条件判断来筛选出相关的实验场景和比较。

如果这些数据是在数据库里而不是CSV文件,那就没问题了,但为了这个数据搭建一个“真正”的数据库似乎有点过于复杂。有没有什么简单的Python方法可以解决我这个问题呢?

总结一下:我想像查询数据库一样查询CSV文件,或者把CSV文件放进一个迷你数据库里。

3 个回答

0

我曾经开始写一个叫做 wavemol 的工具库。其中有一个子包是 wavemol.fileaccess,里面有一个用来解析 CSV 文件的类,这个类可以让你更方便地访问文件。你可以在这里查看它提供的方法。

在这里查看源代码

你可能需要先安装 wavemol.core。我现在不再积极开发这个代码了,但如果你对它感兴趣,并且觉得这个工具对你有用,我可以找点时间重新关注一下,把它继续推进(当然,如果有人愿意帮忙,那是非常欢迎的,但不是必须的)。我对这个项目有点失去兴趣,因为我换了工作,不再需要这些东西了。

1

也许 pandas 可以帮到你。特别是它的 query 函数。

pandas 还可以做 连接操作,但到那时候我会建议你使用 SQL。一个简单的数据库工具是 dataset

7

虽然我对你的具体情况一无所知,但我认为你最终会发现以下几种方法中,有一种会比较适合你:

显然,上面提到的每种方法都有自己的优缺点,这些优缺点会根据你的具体情况而有所不同。因此,仔细地将它们结合使用,可能会得到最好的整体效果。

撰写回答