📌  相关文章
📜  Tiger Analytics 数据分析师面试经验(校内)(1)

📅  最后修改于: 2023-12-03 14:47:58.704000             🧑  作者: Mango

Tiger Analytics 数据分析师面试经验(校内)

为了帮助程序员准备数据分析师岗位的面试,我们分享一些Tiger Analytics数据分析师面试经验(校内)。

岗位职责

作为一名数据分析师,你需要能够:

  • 进行数据清洗
  • 建立预测模型
  • 熟练掌握SQL和Python/R
  • 对数据进行探索性分析
  • 解决业务问题
技能要求

在面试时,你需要证明你具有以下技能:

  • 优秀的数据分析能力
  • 熟练的SQL和Python/R编程技能
  • 理解统计学原理和机器学习算法
  • 能够进行数据清洗工作
  • 能够将数据可视化呈现
面试题目

以下是一些可能会在Tiger Analytics数据分析师面试中遇到的问题。

问题1:

我们有两个表,一个是订单表,另一个是客户表。请使用SQL查询,在2019年9月30日至2020年3月31日期间,消费金额在1000元以上的顾客人数是多少?

SELECT COUNT(DISTINCT order.customer_id)
FROM order JOIN customer ON order.customer_id = customer.customer_id
WHERE order.date >= '2019-9-30' 
AND order.date <= '2020-3-31' 
AND order.amount >= 1000;
问题2:

我们有一批数据,其中存在缺失值和异常值,请介绍一下你的数据清洗流程。

首先,我们需要查看数据,了解存在哪些缺失值和异常值。然后我们可以采用一些方法来处理这些缺失值和异常值。例如:

  • 去除存在缺失值的行
  • 对于数值型数据,可以使用中位数或均值来填充缺失值
  • 对于分类型数据,可以采用众数来填充缺失值
  • 对于异常值,可以使用箱线图检测和修正
import pandas as pd
import numpy as np

# 读取数据
df = pd.read_csv('data.csv')

# 查看缺失值
print(df.isnull().sum())

# 缺失值替换
df['col_name'].fillna(df['col_name'].mean(), inplace=True)

# 异常值处理
q_low = df["col_name"].quantile(0.01)
q_hi  = df["col_name"].quantile(0.99)

df_filtered = df[(df["col_name"] < q_hi) & (df["col_name"] > q_low)]
问题3:

请描述一下在数据分析项目中,你通常使用哪些算法来解决问题?

在数据分析项目中,我们通常使用以下算法:

  • 线性回归
  • 逻辑回归
  • 决策树
  • 随机森林
  • 支持向量机
  • 神经网络

其中,线性回归和逻辑回归适用于连续和离散数据,决策树和随机森林适用于分类和回归问题,支持向量机适用于二元分类问题,而神经网络适用于任何类型的问题。