我有一堆表已经导出为CSV文件。它们维护一些主键/外键关系,我基本上想用这些(一个新的CSV文件)创建一个新视图。在
数据库/csv可以简化为:
Replys.csv
-PostId
-ReplyId
-ReplyText
Users.csv
-ReplyId
-UserId
-UserText
其中ReplyId
是Replys.csv
中的主键,Users.csv
中的外键。在
对于每个User
,找到ReplyId: Users.csv -> Replys.csv : ReplyId
所以打印每个用户,他们的ReplyId和ReplyText。在
^{pr2}$在SQL中,我相信它应该类似于:
SELECT ReplyId, ReplyText
FROM Users, Replys
WHERE Users.ReplyId = Replys.ReplyID
如何仅使用CSV文件来实现这一点?有可能吗?在
编辑:这个问题很让人困惑,但我想我已经解释清楚了。如果您有任何进一步的问题/澄清,请在答复中提出:)。在
Pandas数据帧试图提供类似SQL的操作。
pd.read_csv
两个csv,然后执行类似pandas.merge(users, replys, on='reply_id')
的操作。在http://pandas.pydata.org/pandas-docs/version/0.15.2/merging.html
首先,您将导入不同的表到数据库中,而不是导入多个数据库。这似乎是混淆的第一点。您应该能够将csv文件表直接导入数据库。一旦您有了所描述的表关系,您应该能够通过执行
INNER JOIN
来获得必要的数据:您可以执行
inner
合并:假设
replys
来自回复.csv并且users
来自用户.csv公司名称:对于多对一关系,则可以执行
^{pr2}$left
合并:如果您来自SQL,文档中有一个有用的部分
你会这样读CSV的:
上面假设csv中的第一行包含一个标题行,并且以逗号分隔
相关问题 更多 >
编程相关推荐