pysql = lambda q: pdsql.sqldf(q, globals())
str1 = "select coalesce(ID1, H_ID, [Alternate Source Unique
Identifier]) as Master_ID, [Alternate Source Unique Identifier] as Q_ID
from crosswalk;"
with Timer("Load master_ids:"):
master_id_list = pysql(str1)
print("Records: {}".format(len(master_id_list)))
master_id_list.head()
pySQL运行只需5秒钟!想用熊猫让它看起来/像sql一样工作
我想用Python语言编写的第二个脚本,因为我不能用pysql :(,任何想法?在Python,请您第二个脚本的最好的翻译?
我已经做了2个命题,但没有真正有效在时间 第一个没有熊猫(这是必要的)
def coalesce (df, column_names):
i=iter(column_names)
column_name=next(i)
answer=df[colum_name]
for column_name in i:
answer = answer.fillna(df[column_name])
return answer
coalesce(df, ['first', 'third', 'second'])
谢谢您的建议!
为什么你使用''副本()''方法?我认为这会造成很多开销。 – Dimgold
谢谢,你建议你代替复制什么? –