第二周
Python,是唯一一个,我会写的语言!而数据挖掘学习小组,也选了Python。好开心!
第一周说了很多题外话,这周,就只写作业了。
Python环境配置
Python安装,有两种选择:
安装官方版本
官方版本对于Windows用户来说,不太友好。Python默认的pip在安装某些库的时候,很难。比如这次课程中提到的numpy与pandas。
如果你已经安装了官方版本,但有些库装不上的话,可以去这个网站找别人编译好的:https://www.lfd.uci.edu/~gohlke/pythonlibs/
安装其他发行版
这个选择就比较多了,可以选Python(x,y),也可以选Anaconda。我推荐Anaconda,毕竟,conda用起来太省心了。
安装Python库
pip
如果使用pip,可以按照如下方式进行安装:
代码语言:javascript复制pip install pandas
但这个在Windows环境下不一定好使,因为库可能需要编译。这个时候,就需要到我刚才说的那个网站下载别人编译好的库。
conda
使用conda的话,如果网速允许,一切都会很顺畅。
代码语言:javascript复制conda install pandas
不论是conda还是pip,都会自动解决包依赖,像yum/apt-get一样省心。比如pandas依赖numpy,你只需要在命令行中输入上面的命令。
基本语法
控制语句
控制语句与定义函数
代码语言:javascript复制_list = range(10)
def func1(param):
for i in param:
if i%2 == 0:
print(i,'是个偶数!')
else:
print(i,'是个奇数!')
func1(_list)
文件读写
以读写文本为例
读
代码语言:javascript复制with open(r'文本路径','r') as txt:
for i in txt.readlines():
print(i)
写
代码语言:javascript复制_list = range(1,11)
with open(r'文本路径','a ') as txt:
for i in _list:
txt.writelines('第%d行n'%(i))
基本数据结构
字典
借助字典,实现一下众数
代码语言:javascript复制import numpy as np
#创建随机数组
s = np.random.randint(10,20,200)
#利用字典特性求众数
def d_mode(param):
d = {}
for i in param:
if i in d:
d[i] = d[i] 1
else:
d[i] = 1
return max(d,key=lambda key:d[key])
print(d_mode(s))
集合
代码语言:javascript复制import numpy as np
#创建随机数组
s = np.random.randint(10,20,200)
#利用set特性去个重
u_s = list(set(s))
print(u_s)
实践
描述性分析
这个内容,上次的作业已经写过了,就不再写了。
中位数
我也来实现一下吧!
代码语言:javascript复制import numpy as np
#创建随机数组
s = np.random.randint(10,20,200)
def func2(param):
param.sort()
length = param.size
if length % 2 == 0:
return int((param[int(length/2)] param[int(length/2) 1])/2)
else:
return param[round(length/2)]
print(func2(s))
总结
第二周了,想想这一周真是充实,算上这一篇推送,公众号都实现周更了。 周一到周五,每天晚上抽了点时间,分享了一点自己擅长的技术。周末时间充足,适合给自己充电,学学数据挖掘的技术。
others
一个有趣的图,分享给大家!