【发布时间】:2016-08-06 19:35:13
【问题描述】:
我有一个 pandas 数据框,其中包含一个合同列表df['contract']。
我有一个 SQL 查询,它给出了合同持有人的名字和姓氏。我需要结合查询和合同列表。
select firstname, lastname from holder where holder_contract= df['contract']
如何从df 创建一个数据框,从我的查询中添加 2 列 firstname 和 lastname?
编辑:我探索的曲目
我为一份合同提取了一个 DF,并且可以加入它。 我创建了一个循环,但连接只匹配一行,因此最终数据框填充了 1 行,其他为空白。如果我想使用合并,我需要创建一个包含所有值的大表。
zip( *map(lambda x: pd.read_sql_query(SQL.format(x),connection).loc[0], df.contract)) 给了我想要的 2 列,但如果没有匹配则失败。
【问题讨论】:
-
简单地说,用read_sql读入查询并与df合并。在查询中包含连接键
holder_contract。 -
df = read_sql("select firstname, lastname from holder where holder_contract= 0123456", engine=...) -
你是说我必须先阅读我的表格以提取数据帧,然后加入每个 1 行数据帧?
-
您是在使用 SQLAlchemy 还是在编写普通查询?
-
疼痛查询。查询参数是联系电话。我必须迭代合同列以检索我的所有信息
标签: sql python-2.7 pandas