我有一个数据框,其中包含6K个项目,每个项目都有70个字段来描述它。因此,我的数据框的长度约为420K行。然后我像这样应用我的函数:
df_dirty[['basic_score', 'additional_score']] = df_dirty.apply(compare.compare, axis=1)
比较功能从df_dirty
获取行,然后从该行获取ID
,具体取决于它从该行获取其他两个单元格并进行比较。比较可能很简单
if cell1 == cell2:
return True
else:
return False
或更困难的计算,即采用这些单元格的值,然后计算它们的比率是否在某个范围内或其他范围内。 总体而言-我应用于数据框的功能正在执行更多操作,因此对于复杂数据的大型数据集(不仅是纯数字,还有数字和文本组合等)来说,这非常耗时。
我想知道是否有比仅应用函数更快的方法?
我对此有一些想法:
将所有内容放在服务器上,并在一夜之间执行所有计算,因此只要求已经计算出的结果会更快,
我还认为,如果我使用C编写我的compare
函数,这可能会更快。我还有其他选择吗?