pandas df.eval()应用
执行表达式df.eval() df.eval()与之前介绍过的df.query()一样,可以以字符的形式传入表 达式,增加列数据。下面以增加总分为例: # 传入求总分表达式 df.eval('total = Q1+Q3+Q3+Q4') ''' name team Q1 Q2 Q3 Q4 total 0 Liver E 89 21 24 64 201 1 Arry C 36 37 37 57 167 2 Ack A 57 60 18 84 177 3 Eorge C 93 96 71 78 313 4 Oah D 65 49 61 86 273 .. ... ... .. .. .. .. ... 95 Gabriel C 48 59 87 74 296 96 Austin7 C 21 31 30 43 124 97 Lincoln4 C 98 93 1 20 120 98 Eli E 11 74 58 91 218 99 Ben E 21 43 41 74 177 [100 rows x 7 columns] ''' 其他常用方法如下: df['C1'] = df.eval('Q2 + Q3') df.eval('C2 = Q2 + Q3') # 计算 a = df.Q1.mean() df.eval("C3 = `Q3`+@a") # 使用变量 df.eval("C3 = Q2 > (`Q3`+@a)") # 加一个布尔值 df.eval('C4 = name + team', inplace=True) # 立即生效