python数据分析师面试题选

2017 年 11 月 21 日 数据挖掘入门与实战 要学习更多点这→

 向AI转型的程序员都关注了这个号👇👇👇


大数据挖掘DT数据分析  公众号: datadw


python数据分析部分


1. 如何利用SciKit包训练一个简单的线性回归模型
利用linear_model.LinearRegression()函数


# Create linear regression object

regr = linear_model.LinearRegression()

# Train the model using the training sets

regr.fit(data_X_train, data_y_train)


2. 例举几个常用的python分析数据包及其作用

数据处理和分析:NumPy, SciPy, Pandas
机器学习:SciKit
可视化: Matplotlib, Seaborn


3. 如何利用Numpy对数列的前n项进行排序
使用argsort()函数:x[x [: n-1].argsort ()]


4. 如何检验一个数据集或者时间序列是随机分布的
画lag plot(Correlogram:相关图),如果图上的点呈散乱分布,则为随机


5. 在python中如何创建包含不同类型数据的dataframe
利用pandas包的DataFrame函数的serias创建列然后用dtype定义类型:
df = pd.DataFrame({'x': pd.Series(['1.0', '2.0', '3.0'], dtype=float), 'y': pd.Series(['1', '2', '3'], dtype=int)})


6. Pandas中使用的标准数据缺失标志是什么
NaN


7. 描述numpy array比python list的优势

a. numpy array比python list更紧凑,存储数据占的空间小,读写速度快。(这是由于python list储存的是指向对象(至少需要16个字节)的指针(至少4个字节);而array中储存的是单一变量(比如单精度浮点数为4个字节,双精度为8))

b. array可以直接使用vector和matrix类型的处理函数,非常方便。


8. 如何检验numpy的array为空
使用size函数, 比如

a = np.array([])
print a.size
# 0

9. 如何检验pandas dataframe为空?
使用empty函数



python 基础操作部分

1. 如何在python中复制对象
使用copy包的copydeepcopy函数。其中,copy 仅拷贝对象本身,而不拷贝对象中引用的其它对象;deepcopy 除拷贝对象本身,而且拷贝对象中引用的其它对象。


2. PEP8是什么
python语言的编程规范,提高代码可读性


3. init.py是什么
一个空文件,用于将导入目录中的模块。比如有一个模块是maindir/subdir/module.py,init.py 可以使之可以通过以下形式导入。import  maindir.subdir.module


4. range()xrange()函数的差异
range()生成的是list,而xrange()生成的是迭代器(iterator)。例如:

range(5) 
#  [0, 1, 2, 3, 4]

xrange(5)

list(xrange(1,5))
# [1, 2, 3, 4]


5. 如何对list中的item进行随机重排
使用shuffle()函数


6. python中用于发现bug的工具
Pylint和Pychecker. Pylint可以检验模块是否满足所有的编程标准;Pychecker则是静态分析工具。


7. 装饰器的作用
装饰器可用于修饰函数或类。通过装饰器可以包裹函数或类使之执行之前或之后调用装饰器函数,从而达到抽离出大量函数中与函数功能本身无关的雷同代码并继续重用的目的。比较经典的厨力场景有检验权限,追踪参数,日志登陆等。

def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped 
def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped 
@makebold@makeitalicdef hello():
    return "hello world"


python程序解析部分


  1. 以下代码的输出?


def multipliers():

return [lambda x: i * x for i in range(4)]

print [m(2) for m in multipliers()]


  1. 输出为[6,6,6,6]。 这个的原因是 Python 的闭包的后期绑定导致的 late binding,这意味着在闭包中的变量是在内部函数被调用的时候被查找。所以结果是,当任何 multipliers() 返回的函数被调用,在那时,i 的值是在它被调用时的周围作用域中查找,到那时,无论哪个返回的函数被调用,for 循环都已经完成了,i 最后的值是 3,因此,每个返回的函数 multiplies 的值都是 3。因此一个等于 2 的值被传递进以上代码,它们将返回一个值 6 (比如: 3 x 2)。


  2. 以下代码是否报错

    list= [‘a’,’e’,’i’,’o’,’u’]print list [8:]

    输出为[]。 访问一个列表的以超出列表成员数作为开始索引的切片将不会导致 IndexError,并且将仅仅返回一个空列表。


  3. 以下代码的输出


def foo (i= []):

i.append (1)

return i

foo ()

foo ()



数学统计学部分

1. 什么是逻辑斯蒂回归(logistic regression)
逻辑斯蒂回归常指逻辑回归模型,用于预测参数之间组合可能输出的二分结果。


2. 推荐系统、协同过滤


3. P值的意义
决定假设检验的的结果是否显著

4. 监督学习和非监督学习,机器学习算法


5. A/B测试
对有两个变量A,B的随机试验进行的统计结果测试,目的是识别改动对网页点击率的影响从而获得实现最大化的改动。


6. 特征值和特征向量
在数据分析是通过计算相关和协方差矩阵的特征向量可以用于确定之后的线性转换的方向。特征值表示特征向量方向转化或者压缩的强度。

7. 如何评价一个逻辑斯蒂模型

  • 用分类矩阵查看真阴性和假阳性

  • 一致性分析: 查看逻辑斯蒂模型区分事件是否发生的能力

  • 与随机选择模型进行对比


8. 项目分析的步骤

  • 理解问题

  • 探索数据

  • 准备数据用于建模

  • 建模

  • 测试

  • 上线执行并追踪


9. 如何处理缺失数据?(如果缺失的数据不可得,将采用何种手段收集?)
首先判断缺失数据是否有意义,如果没有意义或者缺失数据的比例超过80%直接去掉。如果缺失数据有规律,则需根据其变化规律来推测次缺失值;如果数据没有规律,则用其他值代替:

如果数据符合正态分布,缺失值用期望值代替

如果数据是类型变量,则用默认类型值代替缺失值


10. 描述K-Means Clustering算法


11. 逻辑斯蒂回归和线性回归的区别
逻辑斯蒂回归的预测值是两元的,0或1;而线性回归的预测值是连续的。

12. 如何证明根号2是无理数

13. 统计中国有多少树



人工智能大数据与深度学习

搜索添加微信公众号:weic2c

长按图片,识别二维码,点关注



大数据挖掘DT数据分析

搜索添加微信公众号:datadw


教你机器学习,教你数据挖掘

长按图片,识别二维码,点关注

登录查看更多
6

相关内容

一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
192+阅读 · 2020年3月12日
Python数据分析:过去、现在和未来,52页ppt
专知会员服务
99+阅读 · 2020年3月9日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
一文看懂怎么用 Python 做数据分析
大数据技术
24+阅读 · 2019年5月5日
Python奇淫技巧,5个数据可视化工具
机器学习算法与Python学习
7+阅读 · 2019年4月12日
深度学习面试100题(第41-45题)
七月在线实验室
15+阅读 · 2018年7月18日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
面试整理:关于代价函数,正则化
数据挖掘入门与实战
8+阅读 · 2018年3月29日
RF、GBDT、XGBoost面试级整理
数据挖掘入门与实战
17+阅读 · 2018年3月21日
机器学习面试题精讲(一)
七月在线实验室
4+阅读 · 2018年1月11日
BAT题库 | 机器学习面试1000题系列(第196~200题)
七月在线实验室
17+阅读 · 2017年11月16日
BAT机器学习面试1000题系列(第36~40题)
七月在线实验室
8+阅读 · 2017年10月3日
学员笔记||Python数据分析之:numpy入门(一)
七月在线实验室
7+阅读 · 2017年9月28日
Embedding Logical Queries on Knowledge Graphs
Arxiv
3+阅读 · 2019年2月19日
Efficient and Effective $L_0$ Feature Selection
Arxiv
5+阅读 · 2018年8月7日
Feature Selection Library (MATLAB Toolbox)
Arxiv
7+阅读 · 2018年8月6日
Arxiv
19+阅读 · 2018年5月17日
Arxiv
4+阅读 · 2018年4月17日
Arxiv
13+阅读 · 2018年4月6日
VIP会员
相关VIP内容
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
192+阅读 · 2020年3月12日
Python数据分析:过去、现在和未来,52页ppt
专知会员服务
99+阅读 · 2020年3月9日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
相关资讯
一文看懂怎么用 Python 做数据分析
大数据技术
24+阅读 · 2019年5月5日
Python奇淫技巧,5个数据可视化工具
机器学习算法与Python学习
7+阅读 · 2019年4月12日
深度学习面试100题(第41-45题)
七月在线实验室
15+阅读 · 2018年7月18日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
面试整理:关于代价函数,正则化
数据挖掘入门与实战
8+阅读 · 2018年3月29日
RF、GBDT、XGBoost面试级整理
数据挖掘入门与实战
17+阅读 · 2018年3月21日
机器学习面试题精讲(一)
七月在线实验室
4+阅读 · 2018年1月11日
BAT题库 | 机器学习面试1000题系列(第196~200题)
七月在线实验室
17+阅读 · 2017年11月16日
BAT机器学习面试1000题系列(第36~40题)
七月在线实验室
8+阅读 · 2017年10月3日
学员笔记||Python数据分析之:numpy入门(一)
七月在线实验室
7+阅读 · 2017年9月28日
Top
微信扫码咨询专知VIP会员