我们可以以更优化的方式编写下面的代码吗

阿努拉格古普塔

通过这行代码,我试图从数据框中删除一整行,该行在任何列值中都不包含字符串“-->”。

try:
    for j in range(len(df)):
        flg = 0
        for i in df.columns:
            if df[i].astype(str).str.contains('-->').iloc[j]:
                flg = 1
        if flg == 0:
            df.drop(df.index[j], axis=0, inplace=True)
except:
    pass

这是一个工作代码。问题是我们能否以更优化的方式编写这段代码,因为如果我们在数据帧中有 20K 或更多行,这段代码将花费更多时间。

学习是一团糟

你可以矢量化:

mask = df.astype(str).apply(lambda column : column.str.contains('-->')).any(axis=1)
df = df[mask]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我们如何编写下面的 SQL 查询

如何以更好的方式编写下面的代码以保持无休止的循环?

当使用ReactJS和JSX时,我们可以编写普通的JS代码以某种方式返回某些元素吗?

可能的方式写下面的代码在Java 8

下面的代码成功运行,这是否意味着我们可以启动线程两次?

我们可以将定向广播用作有限广播吗?见下面的场景

我可以在LINQ中声明/使用某些变量吗?还是我可以写下面的LINQ更清晰的文章?

我们可以在Java程序中编写Scala代码吗?

我们可以延迟编写循环/条件/代码块吗?

我可以澄清下面的这个 Python 代码吗?

为什么在下面的scala代码中使用了内部函数,没有内部函数我们不能编写它

我们可以编写Visual Studio Code扩展吗?

我们可以编写 SQL 查询而不是 CQL 吗?

我们可以不用javascript编写IF语句吗

我们可以在PowerShell中编写星级程序吗?

我们可以使用Java流在下面的情形?

我们可以在 UnetStack 中用 python 编写我们的代理吗?

我们可以这样使用分组方式吗?

我们可以更新braintree订阅的付款方式吗?

我们可以以编程方式缓存Google地图吗?

我如何优化下面的代码,以便它可以接受任何数组大小并给我结果

下面的代码可以改成更快吗

我们可以在代码中执行多个程序吗?

我们可以在Python中使用C代码吗?

我们可以推送代码GIT功能分支吗?

我们可以编译Windows程序的源代码吗?

我们可以在Android上实现MATLAB代码吗?

我们可以在签名的APK中找到我们的C ++代码吗?

更优雅的代码编写方式