基于其他表在python中创建或填充表

问题描述 投票:0回答:1

我是python / pandas的新手,并且有一个相当基本的问题。

我有2个表有很多列,“ID”作为主键。

我想基于2个表创建另一个具有条件的表。

例如:表A,表B - >表C.

在SQL中我会写这样的东西:

create table TableC as select 
a.ID, 
case when b.Field1=1000 and a.Field1=50 then 20 else 0 end as FieldA,
case when b.Field2=15 and a.Field2=100 then 100 else 0 end as FieldB
from TableA a, TableB b
where a.ID=b.ID
order by 1

我正在努力使用python将类似的表C放在一起。我试图创建一个函数,但我似乎不能在函数中包含多个表,也不能基于多个表创建一个新表。

任何帮助都感激不尽。

python sql pandas numpy
1个回答
0
投票

达蒙

TableC=TableA.merge(TableB,on='ID')
TableC['FieldA']=np.where((TableC.Field1_x==1000)& (TableC.Field1_y==50),20,0)
TableC['FieldB']=np.where((TableC.Field2_x==15)& (TableC.Field2_y==100),100,0)
© www.soinside.com 2019 - 2024. All rights reserved.