关于人工智能:数据科学家的SQL查询

1次阅读

共计 1980 个字符,预计需要花费 5 分钟才能阅读完成。

作者 |Soner Yıldırım
编译 |VK
起源 |Towards Data Science

SQL 是一种编程语言,大多数关系数据库管理系统(RDBMS)都应用它来治理以表格模式(即表)存储的数据。

SQL 是数据科学家所冀望的一项基本技能。你可能会说,这是一个数据工程师的工作,但数据科学家的角色往往是全套的。此外,作为一名数据科学家,你不心愿依赖数据工程师从数据库中检索数据。

在本文中,咱们将编写简单的查问来检索存储在表中的数据。我曾经将 客户散失数据集(https://www.kaggle.com/shubh0…。

咱们将从简略的查问开始,逐渐减少复杂性。我将形容所需的数据,而后编写查问以从表中检索数据。

让咱们先看看表中的列。

对于客户和他们在银行的账户有一些特点。“Exited”列批示客户是否散失(即来到银行)。

咱们当初能够开始查问了。

“CustomerId”和“姓氏”列的前 5 行

SELECT CustomerId, Surname 
FROM CHURN
LIMIT 5;

余额最高的客户的 ID

SELECT CustomerId, MAX(Balance)
FROM CHURN;

咱们没有检索整个“Balance”列,而是应用 MAX 函数仅抉择该列中的最大值。

余额排名前 5 位的客户

咱们不能在这个查问中应用 MAX,因为咱们须要排名前 5 的客户。咱们能够做的是依据余额对客户进行排序,而后抉择应用 LIMIT 失去前 5 名。

SELECT Geography, Balance
FROM CHURN
ORDER BY Balance DESC
LIMIT 5;

没有信用卡的顾客的平均年龄

有一个条件,所以咱们应用 WHERE 语句。

SELECT AVG(Age)
FROM CHURN
WHERE HasCrCard = 0;

39.1121

如果你想晓得,领有信用卡的顾客的平均年龄是 38.8424 岁。

每个国家领有 2 种以上产品的客户数量

咱们将应用另一个聚合函数来计算客户数量。为了依据属性对客户进行分组,将应用 GROUPBY 语句。

SELECT Geography, COUNT(CustomerId)
FROM CHURN
WHERE NumOfProducts > 2
GROUP BY Geography;

基于产品数量的平均工资

咱们能够将 AVG 函数利用于薪资,并按产品数量分组。

SELECT NumOfProducts, AVG(EstimatedSalary)
FROM CHURN
GROUP BY NumOfProducts;

WHERE 语句容许咱们抉择合乎一个或多个条件的条目。然而,它不能与聚合函数一起应用。

对于下面的查问,咱们只对平均值大于 100000 的产品类别感兴趣。因而,咱们须要对平均值利用一个条件,这个条件能够应用 HAVING 语句来实现。

SELECT NumOfProducts, AVG(EstimatedSalary)
FROM CHURN
GROUP BY NumOfProducts
HAVING AVG(EstimatedSalary) > 100000;

50 岁以上并且余额高于平均水平的客户

咱们在这里介绍两个新主题。一种是应用多个条件(age 和 balance),另一种是嵌套的 SELECT 语句。

咱们能够应用 AND 和 OR 等逻辑运算符在 WHERE 语句中组合多个条件。一个条件显式给定(age>50),但另一个条件须要应用另一个 SELECT 语句在表上计算。这就是咱们须要嵌套 SELECT 语句的中央。

SELECT CustomerId, Age, Balance 
FROM CHURN
WHERE Age > 50 AND Balance > (SELECT AVG(Balance)
    FROM CHURN );

余额上的条件是另一个 SELECT 语句。

为已来到的女性并且存留工夫超过了平均水平的客户数量

它与后面的示例相似,但有一个附加条件。咱们将依据三个条件统计客户数量:

  • 性别
  • Exited= 1
  • 客户在银行的存留工夫
SELECT COUNT(CustomerId) AS 'Number of Customers'
FROM CHURN
WHERE Gender = 'Female' AND Exited=1 AND Tenure > (SELECT AVG(Tenure)
    FROM CHURN);

咱们还能够应用“AS”关键字调整后果集中列的名称。

论断

咱们曾经探讨了一些根本和简单的查问。咱们通过查问实现的是一些计算和过滤。因而,咱们只能检索咱们须要的数据。

因为理论的数据库蕴含更多的数据和许多关系表,因而可能应用 SQL 查问所需的数据是十分重要的。

原文链接:https://towardsdatascience.co…

欢送关注磐创 AI 博客站:
http://panchuang.net/

sklearn 机器学习中文官网文档:
http://sklearn123.com/

欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/

正文完
 0