数据分析实习生面试准备2019.3.6

 

数据分析岗位(非数据挖掘、算法)基本要求的技能,本文分别总结了Excel,SQL,Python的基础操作

  • Excel

常用函数的使用,基础图表的制作,数据透视表,vlookup

数据透视表:

  •  建立透视表,了解四个标签的作用(筛选器or切片器、行、列、数值)
  •   vlookup    (参考链接:http://baijiahao.baidu.com/s?id=1603886666150544094&wfr=spider&for=pc)       
  1.  精确查找    =VLOOKUP(查找值,查找区域,返回查找区域第N行,查找模式)   注:查找模式中0为精确查找,1为模糊查找                           eg:=VLOOKUP(D3,A:B,2,0)
  2. 屏蔽错误值查找(将查找结果中#N/A去掉) =IFERROR(错误值,错误值要显示的结果)  eg:=IFERROR(VLOOKUP(D3,A:B,2,0)," ") 
  3. 多列,按不同顺序返回对应值       =VLOOKUP(查找值,查找区域,MATCH(),查找模式)   (区域表达式中根据实际情况判断是否加$)
  4. 逆向查找 (构建新区域,用IF函数调换列的位置使逆向查找变为非逆向) =VLOOKUP(查找值,IF(),返回查找区域第N行,查找模式)        IF({1,0},B,A):列的顺序由A B变为B A(IF 1 0可以改变列的顺序)   用IF函数重新构造的新区域,是多单元格数组公式,记得按Ctrl+Shift+Enter三键结束,否则出错
  5. 多条件查询(用IF函数构建新区域,使多个条件汇总为一列)    =VLOOKUP(查找值1&查找值2,IF(),返回查找区域第N行,查找模式)    新区域IF({0,1},A1&B1,C1)   -->A1和B1的内容合并到新区域中一个单元格里
  6. 根据给出信息的第一个字符查找返回值   =VLOOKUP(D2&"*",A:B,2,0)   星号(*)是通配符,代表所有字符,问号(?)代表一个字符。D2&"*"就是开头包含D2的意思。 
  • 其他函数
  1. 提取一串数字的中间数字         1) 提取数字左边两位    = LEFT(一串数字的区域,提取N个数字)  eg:=LEFT(A1,2)  12345-->12      2) 提取数字右边两位    = RIGHT(一串数字的区域,提取N个数字)  eg:=RIGHT(A1,2)  12345-->45       3)提取中间数字  =MID(一串数字的区域,从左边说第N位,提取M个数字)  eg:=RIGHT(A1,3,2)  1234567-->34    4)身份证中提取生日:=MID(A1,7,4)&"年"&MID(A1,11,2)&"月"&MID(A1,13,2)&"日"
  2. 统计条件个数  =COUNTIF(要统计的区域,条件) eg:统计大于50且小于100的个数 =COUNTIF(A,"<100")-COUNTIF(A,"<50")    多条件统计  = =COUNTIFS(要统计的区域1,条件1,要统计的区域2,条件2......)
  • SQL数据库操作

      (参考《MYSQL必知必会》)

1.  插入数据    INSERT INTO 表名称(id,name,tall)  VALUES (NULL,数据2,数据3),(NULL,数据5,数据6),                  (NULL,‘姓名’,183);    注:主键id是自增的列,可不填

                        INSERT INTO 表名称(id,name,tall)  SELECT  name,tall  FROM 表2;

2.  删除数据   DELETE FROM 表1 WHERE id=5    

3.  查找数据   检索多个列 SELECT id,name,tall FROM 表1;

                       检索所有列 SELECT * FROM 表1;(*为通配符)

                       检索不同的行 SELECT DISTINCT id FROM 表1;

                       检索其中几行  SELECT name FROM 表1 LIMIT n,m;(从第n行开始检索,检索m行)

4.  修改数据     修改(更新)表     ALTER TABLE 表1 ADD 列1,char(20);(增加列,必须标明数据类型)       

                                                       ALTER TABLE 表1 DROP COLUMN 列1;(删除列) 

                         修改(更新)数据   UPDATE 表1 SET 列2='修改内容',列3='修改内容'  WHERE  主键列名=具体主键;

5.  其他           排序  ORDER BY

                       LIKE   通配符      %-->任何字符出现任意次数  eg:WHERE  列1 LIKE ‘%ab%’;  (匹配任何位置包含文本ab的值)

                                                   -(下划线)-->只匹配单个字符,用法同%

面试中遇到过的问题:

                             》 SQL中WHERE 与 HAVING 的区别

                                   (参考:https://www.zhihu.com/question/21375744#answer-2357720)

                                  WHERE -->只能制定行的条件,不能制定聚合处理后的数据(聚合处理:order by/sum()/count()/avg()/...)

                                  HAVING-->指定聚合处理后的数据,通常与order by或聚合函数连用。

  • Python

基础语句:判断 if-else  ;     if-elif-elif-....                循环 while  条件  ;     ​​​​​ for  ...in ...

                 (参考链接:https://jingyan.baidu.com/article/2a138328e26341074b134f7d.html)  

​​numpy函数:建立矩阵的函数库

pandas函数:此函数里的操作相当于数据库(建表 填内容 和其他乱七八糟类似数据库和excel的操作)

                       (pandas参考链接:https://www.jianshu.com/p/1318b85f6eed)

matplotlib函数:可视化作图的包(参考链接:https://blog.csdn.net/Notzuonotdied/article/details/77876080)

 

你可能感兴趣的:(数据分析)