python-在计算中通过数据框提高速度循环

时间:2019-11-18 19:32:40

标签: python pandas

我有一个约有20000行的csv,分为三列(第一列是一个标识符,其他两列是与该标识符对应的数据)。我需要遍历csv并使用其对应的数据值为每个标识符求解方程式。示例:

  • 名称/变量x /变量y
  • John / 65/34
  • 艾米/ 23/87

出于演示目的,该方程类似于z = y * x + y / x。

然后将结果写入另一个数据帧。

但是,完成循环要花很长时间,每个循环大约需要0.17秒的循环时间。很痛苦。

如何优化速度?我听说过矢量化,但不了解。

示例代码:

df = pd.read_csv('thedata.csv', dtype="float")
for i, row in df.iterrows():
   x = row.x
   y = row.y
#calculate result
   z = x * y + y/x

  df['result']= z
  df.to_csv('results.csv', mode = 'a')

谢谢。

0 个答案:

没有答案