【Pandas】Pandas求某列字符串的长度,总结经验教训测试集⼤⼩:
字符串长度与大小test.shape
(898, 11)
对某列的字符串做统计长度
1、for遍历法:
start = time.time()
for i in test.index.values:
test.loc[i,'contentLen1'] = len(test.loc[i,'content'])
time.time() - start
47.16238021850586
2、使⽤pandas的内置⽅法.str
%time test['contentLen2'] = test['content'].str.len()
Wall time: 61 ms
结论
上⾯例⼦可以得出,使⽤pandas时千万不要盲⽬的使⽤for遍历,要学会使⽤pandas提供的内置⽅法。
for和.str⽅法之间的性能差距过⼤,不在⼀个数量级。使⽤for会造成频繁的赋值操作,造成不必要内存消耗和计算时长。
以上测试⽤例才898⾏,for的赋值耗时⾼达47秒,⽣产上的都是⼏百万⾏的数据,使⽤for那不就直接凉凉了?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论