python数据分析师需要掌握哪些分析技能?数据分析面试题集锦「建议收藏」

大家好,今天整理数据分析面试题集锦,经常会被问到,“数据分析需要学习什么技能?”,“针对实际的业务场景,如何使用数据分析工具去分析?”基于此作者总结数据分析面试常用的问题,面试内容包括技能应用篇:EXCEL、SQL、Python、BI工具等,业务思维篇:常用的数据分析方法业务思维等。

其中大部分问题点,没有绝对标准答案,所有问题点都是为了解决问题,大家如果有更好的问题答案,也可以提出,对于其中的问题也可以提出,共同解答,欢迎点赞、转发、评论,下面一起来学习。

本文讲解内容:Excel、SQL、Python面试必备
适用范围:多种数据分析实用技巧

Excel篇

1、Excel创建多级下拉菜单

首先创建一组数据源,其中,省份为一级下拉菜单,市为二级下拉菜单,县为三级下拉菜单,并且在创建二级和三级菜单时,表头标题必须为前一级菜单里的内容。

鼠标框选创建好的数据源,使用快捷键Ctrl+G,点击定位条件。

在定位条件中勾选常量,点击确定。

点击公式选项卡中的根据所选内容创建。

弹出根据所选内容创建名称对话框后,勾选首行选项,再点击确定按钮。

创建一个需要下拉菜单的数据表,鼠标选中省份下需要创建一级菜单的数据区域,在数据选项卡下点击数据验证。

在允许里选择序列选项,来源选择之前创建的一级菜单省份下的数据区域,点击确定,一级下拉菜单就创建好了。

接下来创建二级下拉菜单,鼠标框选需要创建二级下拉菜单数据区域,在允许里选择序列,在来源里写入公式=INDIRECT($E2),INDIRECT返回由文本字符串指定的引用。

同样创建三级下拉菜单,鼠标框选需要创建三级下拉菜单数据区域,在允许里选择序列,在来源里写入公式=INDIRECT($F2)。

如下即创建了多级下拉菜单的数据表。

2、Excel批量生成工资条

首先间隔行创建辅助列,辅助列如下所示。

使用快捷键Ctrl+G,点击定位条件。

在定位条件中勾选空值。

定位出空的单元格后,右键点击插入。

插入整行后点击确定。

即可将原始数据每隔一行插入一行数据。

复制表格标题行,然后使用Ctrl+G快捷键定位出空值。

使用Ctrl+V快捷键快速粘贴标题行。

3、Excel快速插入间隔行

如下是一组工资数据,需要每隔一条工资数据批量插入两个空行。

如下创建辅助列,辅助列以递增的序列进行排列,创建多组辅助列。

点击按照升序排列,即可得到如下的结果,每一条工资数据间隔两行。

SQL篇

有一个学生课程数据库,数据库中包括三个表。

  1. 学生表Student由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept组成,可记为:Student(Sno,Sname,Ssex,Sage,Sdept)其中,Sno为关键字。
  2. 课程表Course由课程号Cno,课程名Cname、先修课号Cpno、学分Ccredit四个属性组成,可记为:Course(Cno,Cname,Cpno,Ccredit)Cno为关键字。
  3. 学生选课表SC由学号Sno、课程号Cno、成绩Grade)三个属性组成,可记为:SC(Sno,Cno,Grade)(SNO,CNO)为关键字。

完成下列题目:

第一问:请把其中建立学生表Student的话句写下来,表Student是由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能空,并且其值是唯一的。

CREATE TABLE Student 
(Sno varchar(20) PRIMARY KEY, 
Sname varchar(10), 
Ssex char(2), 
Sage int, 
Sdept varchar(25));

第二问:在Student表中查询Sdept是计算机的学生的所有信息,并按Sno列降序排列。

select *  
from Student 
where Sdept = "计算机" 
order by Sno desc;

第三问:在以上的三个表中查询Ccredit为5,并且Grade大于60的学生的学号、姓名和性别信息。

select a.Sno,a.Sname,a.Ssex  
from Student 
a join (Course b, SC c) 
on a.Sno=c.Sno and b.Cno =c.Cno  
where Ccredit = 5 and Grade > 60;

Python篇

Excel数据批量操作包括Excel文件拆分到不同的工作簿、将Excel文件拆分到不同的工作表、将不同的工作簿合并到一个Excel文件中、将不同的工作表合并到一个Excel文件中、Excel批量创建多个工作簿。

1、将Excel文件拆分到不同工作簿

import pandas as pd 
df=pd.read_excel(r'C:\Desktop\学生成绩表.xlsx')  

for i in df['科目'].unique():
     df[df['科目']==i].to_excel(f"C:\Desktop\数据拆分{i}.xlsx",index=False)

2、将Excel文件拆分到不同工作表

import pandas as pd 
df=pd.read_excel(r'C:\Desktop\数据拆分\学生成绩表.xlsx') 

writer=pd.ExcelWriter(r'C:\Desktop\不同科目成绩表.xlsx')  

for i in df['科目'].unique():
     df[df['科目']==i].to_excel(writer,sheet_name=i,index=False) 

writer.save()

3、将不同工作簿合并到一个Excel文件中

import os 
path=r'C:\Desktop\数据合并' 
listdir=os.listdir(path) 
df=pd.read_excel(path+'\'+ listdir[0])#导入第一个数据表 

for filename in listdir[1:]:
     dfi=pd.read_excel(path+'\'+ filename) #导入除第一个数据表外其他数据表
     df=pd.concat([df,dfi],sort=False) #数据纵向合并 
     df.to_excel(r'C:\Desktop\学生成绩数据合并.xlsx',index=False)

4、将不同工作表合并到一个Excel文件中

import pandas as pd 
path=r'C:\Desktop\数据合并\不同科目成绩表.xlsx' 
sheet_names=pd.ExcelFile(path).sheet_names 

df=pd.read_excel(path,sheet_name=0)#导入第一个sheet表 

for sheetname in sheet_names[1:]:
     dfi=pd.read_excel(path,sheetname) #导入除第一个sheet表外其他sheet表
     df=pd.concat([df,dfi],sort=False) #数据纵向合并
     df.to_excel(r'C:\Desktop\学生成绩不同sheet表数据合并.xlsx',index=False)

5、Excel批量创建多个工作簿

from openpyxl import Workbook 
import os 
os.mkdir(r'C:\Desktop\批量创建文件夹')#创建一个新的文件夹  

name_list = ["湖南","湖北","河南","河北","山东","山西","广东","广西","贵州","陕西"]  

for name in name_list:
     wb = Workbook()
     wb.save(filename = f"C:\Desktop\批量创建文件夹{name}.xlsx")

如果你对Python感兴趣,想通过学习Python获取更高的薪资,那下面这套Python学习资料一定对你有用!

资料包括:Python安装包+激活码、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等学习教程。0基础小白也能听懂、看懂,跟着教程走,带你从零基础系统性地学好Python!

学习资源推荐

除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。

这里给大家展示一下我进的兼职群和最近接单的截图

兼职群

私单

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取,也可以内推兼职群哦~

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

### 1.Python学习路线

image-20230619144606466

python学习路线图1

2.Python基础学习
01.开发工具

02.学习笔记

在这里插入图片描述

03.学习视频

在这里插入图片描述

3.Python小白必备手册

图片

4.数据分析全套资源

在这里插入图片描述

5.Python面试集锦
01.面试资料

在这里插入图片描述

在这里插入图片描述

02.简历模板

在这里插入图片描述

因篇幅有限,仅展示部分资料,添加上方即可获取👆

------ 🙇‍♂️ 本文转自网络,如有侵权,请联系删除 🙇‍♂️ ------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值