【发布时间】:2018-03-30 04:32:41
【问题描述】:
输出更像是下面的 SQL 语句。
UPDATE table_A SET final=(cs+fhfa+sz)/3 WHERE cs IS NOT NULL AND fhfa IS NOT NULL AND sz IS NOT NULL;
这里的 cs+fhfa+sz 都是 sql 表(和数据框)中的所有单独的列
如果我想把这条SQL语句转换成python中的pandas操作,这更像是:
df['div_3'] = (df.cs+df.fhfa+df.sz) /3
df['final'] = df.loc[(df['cs'] != None) & (df['fhfa'] != None) & (df['sz'] != None) ] = df['div_3']
但这并不能保证最终放置“相应的值”。如何做到这一点??
我真的需要创建另一列 div_3 与所有 3 列的总和?这可以在不创建另一个列的情况下完成吗?
【问题讨论】:
标签: python sql pandas dataframe