朝着数据科学中的工具无关性前进:SQL的Case When和Pandas的Where

数据科学工具的无关性前进:SQL的Case When和Pandas的Where

通过示例解释

Photo by Monika Simeonova on Unsplash

你的客户数据存储在 SQL 数据库中。你被分配了一个任务,需要从一些表中检索数据,进行一些数据清洗和处理,并将结果写入另一个表中。

不幸的是,你不知道如何使用 SQL 进行这些操作。不用担心!你擅长使用 Pandas 进行数据清洗和处理。所以,你想出了一个解决方案:

  • 从 SQL 表中检索所有数据
  • 将数据下载为 CSV 文件
  • 将 CSV 文件读入 Pandas DataFrames
  • 执行所需的数据清洗和处理操作
  • 将结果写入另一个 CSV 文件
  • 将 CSV 文件中的数据上传到 SQL 表中

很好的计划,对吧?

如果你真的执行这个计划,我相信你的经理会与你进行一次谈话,这可能取决于你经理的个性而是愉快还是不愉快。无论如何,我不认为在谈话之后你还会执行这个很棒的计划。

我知道在数据科学中通常有很多不同的方法来完成任务。你应该始终以最高效的方式为目标,因为你通常会处理非常大的数据集。使事情比必要复杂化会让你付出额外的时间和金钱。

“我在 Pandas 上很擅长,所以我会用 Pandas 做所有事情”并不是一种理想的态度。如果你的任务涉及从 SQL 表中读取数据并将结果写入 SQL 表中,通常最好的方法是在两者之间使用 SQL 进行步骤操作。

SQL 不仅仅是一种查询语言。它也可以作为高效的数据分析和处理工具使用。

我记得曾经编写 SQL 任务来进行非常复杂的数据预处理操作,它们运行得很好。

数据科学仍然是一个不断发展的领域。新的工具和概念不断被引入。你不应该依赖于单一的工具,并且应该始终乐于学习新的工具。

Pandas vs SQL