2021某大厂数据分析笔试题解析
导读:从牛客网上找到的搜狐畅游数据分析岗位的笔试题,精选了14道题目来给大家解析下,内容涵盖统计学、Excel、SQL、Python、业务理解。
No.1 若咖啡和茶叶互为替代品,当咖啡价格上升时,茶叶需求量的变化趋势是:
答案:增加
解析:供求关系的影响,咖啡价格上升,买的人少,咖啡和茶互为替代品,大家会选择价格没上涨的茶。
No.2 游戏中玩家可以通过两种途径清凉一夏活动、西瓜大赛活动获得玉瓤,假设每个活动获得玉瓤数概率如下表所示:活动上线后,某玩家随机选择参加一活动,结果获得了25个玉瓤。请问该玩家参加的是清凉一夏活动的概率。
答案:4/7
解析:
No.3 在游戏中,假设对于普通玩家,参加一次打图活动获得藏宝图的概率是0.5,每次打图活动相对独立。某角色参加了10次打图活动,获得了9张藏宝图,请问该角色是否可以认定为非普通玩家?
以0.01的校验水准无法认定,但以0.05的校验水准可以认定 以0.01的校验水准,可以认定为非普通玩家 以0.05的校验水准无法认定
答案:B
解析:
No.4 筛选了一批新用户,统计其每天在线时长、获得经验数据如下:角色id 平均每天在线时长(小时) 平均每天获得经验(万) 请尝试计算平均每天在线时长数据、平均每天获得经验数据的协方差。
答案:19/3
解析:
No.5 如表A中记录了玩家的账号和消费金额,表B中记录了玩家的账号和性别,现需要把表B中玩家性别信息匹配到表A中,在EXCEL中应该用哪个函数?
LOOKUP SEARCH MATCH VLOOKUP
答案:VLOOKUP
解析:这题就很简单了,考察Excel里的两表匹配的函数,即VLOOKUP。
No.6 以下哪组指标都是付费项指标:
APA,ARPU APA,DAU DAU,ARPU DAU,DAOT
答案:APA,ARPU
解析:
APA (Active Payment Account):活跃付费用户数 ARPU(Average Revenue per User):每用户平均收入 DAU(Daily Active Users):日活跃用户数量
No.7 指标定义:新用户n日留存率=新用户游戏的第n天留存数/新用户数。那么,7月8日新增用户2000人,这2000人在7月9日,7月10日,7月11日分别上线了500,400,350人,那么7月8日新增用户的3日留存率为多少(请以百分数展现,小数点后保留一位)
答案:20%
解析:
Day 1 7月8日,新增2000人 Day 2 7月9日,留存500人 Day 3 7月10日,留存400人
No.8 SQL中常用的条件表达式有:
case when if else if else when switch
答案:case when
解析:SQL里的条件表达式就是case when
No.9 SQL中用于将某种数据类型的表达式显式转换为另一种数据类型的函数是
concat isnumeric change cast
答案:cast
解析:
SELECT CAST(NOW() AS DATE)
No.10 数据库中的表A记录了某天玩家登录游戏的所有记录,表A中共有2个字段,一个是记录玩家登录时间的字段time,一个是记录玩家游戏账号的字段cnmaster,现需要计算这天登录过游戏的不重复账号个数,SQL命令是:
答案:
select count(distinct cnmaster) from A
解析:考察SQL语句计数与去重。
No.11 数据库有两张表, A表为游戏登出表,用户每次下线时记录一条:dt(登出日期),servertime(登出时间),userid(用户id),onlinetime(当次在线时长(单位:秒),int);B表为游戏充值表,用户每次充值记录一条:dt(充值日期),servertime(充值时间),userid(用户id),money(充值金额,int) 请查出:
2018年9月1日~2018年9月7日每天用户平均在线时长。指标说明:平均在线时长=总在线时间/用户数。 2018年9月1日当天,总在线时长超过20分钟以上的用户的付费总金额。
答案:
-- 第一题
select dt,sum(onlinetime)/count(uesrid) as '平均在线时长'
from A
where dt between '2018-09-01' and '2018-09-07'
group by dt
-- 第二题
select userid,sum(money)
from B
where userid =
(
select userid
from A
where dt = '2018-09-01'
group by userid
having sum(onlinetime) >20*60
)
group by userid
解析:第二题中先找出2018年9月1日当天,总在线时长超过20分钟以上的用户的id,再求这些用户付费总金额,用到了子查询。
No.12 使用python的matplotlib工具包绘制折线图,所用的函数是
plot scatter sort input
答案:plot
解析:不多说了,基础,plot绘图。
No.13 以下python命令的输出结果为:
zhandouli=16000
if zhandouli < 10000:
print("初入江湖")
elif zhandouli < 30000:
print("小有名气")
else:
print("名动一方")
答案:小有名气
解析:也是基础,10000<16000<30000,所以输出小有名气。
No.14 在Python中输入以下命令,输出结果为:
s=0
for k in range(101):
s=s+k
print (s)
答案:5050
解析:range(101)返回的结果是0到100,这题是0到100相加的等差数列,结果是5050.
干货直达👇
评论