自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(153)
  • 收藏
  • 关注

原创 单层感知器实践

import numpy as npimport matplotlib.pyplot as plt#输入数据X = np.array([[3,3], [4,3], [1,1], [0,2]])# 添加偏置项X = np.concatenate((np.ones((4,1)),X),axis=1)p...

2020-04-29 19:45:55 270

原创 sklearn-多项式回归

import numpy as npimport matplotlib.pyplot as pltfrom sklearn.preprocessing import PolynomialFeaturesfrom sklearn.linear_model import LinearRegression#载入数据data = np.genfromtxt("job.csv",delim...

2020-04-02 19:15:08 386

原创 k-近邻算法

#科学计算包from numpy import *# 运算符模块import operatordef createDataSet(): group = array([ [1.0,1.1], [1.0,1.0], [0,0], [0,0.1], [0,0.2] ]) #label包含每个...

2020-02-06 20:35:58 201

原创 四分位数和箱线图

四分位数四分位数(Quartile)也称四分位点,是指在统计学中把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值。箱线图利用数据中的五个统计量:最小值、第一四分位数、中位数、第三四分位数与最大值来描述数据的一种方法。四分位差:IQR = Q3-Q1,IQR(interquartile range)异常值:OUTLIER<Q1-1.5IQR or OUT...

2019-10-28 18:39:20 3555

原创 数据处理-处理缺失值、去除空格值、数据分组、虚拟变量

查看缺失值dataframe.isnull( )填补缺失值向上填充法 .ffill( )向下填充法 .bfill( )将某个特定的值x填充空白值 .fillna(x)删除含有缺失值的样本 .dropna( )trips1.csvstart_id,end_id,start_date0,55,55,'8/29/2013 14:13'1,55,55,'8/...

2019-10-21 12:36:10 1391

原创 数据去除重复值

查看重复值dataframe.duplicated( )删除重复值dataframe.drop_duplicates( )trips1.csvstart_id,end_id,start_date0,55,55,'8/29/2013 14:13'1,55,55,'8/29/2013 14:13'2,55,55,'8/29/2013 14:13'3,55,55,'8/29...

2019-10-21 10:44:53 253

原创 数据初识

import pandas as pdstations = pd.read_csv('stations.csv',encoding='utf-8')print(stations.head())# id name lat long docks city# 0 1.0 '#SAN#' 37.3 -121 27.0 'San Jose'# ...

2019-10-21 10:34:58 290

原创 shape

作用显示Numpy array或者Pandas DataFrame的形状reshape行列数重整import numpy as npimport pandas as pdarr = np.array([[1,2,3,4,5,6,7,8,9,10]])print(arr)# [[ 1 2 3 4 5 6 7 8 9 10]]print(arr.shape)...

2019-10-17 16:27:40 133

原创 DataFrame绘图

‘bar' or 'barh' for bar plots#条状图’hist‘ or histogram#直方图’box‘ for boxplot#箱线图‘kde’ or 'density' for density plots#密度图‘area’ for area plots#区域图‘pie’ for pie plots #饼图‘scatter’#散点图import ...

2019-10-17 14:55:17 575

原创 DataFrame的合并

merge按指定列进行合并import pandas as pddf1 = pd.read_csv('arr.csv')print(df1)# date s1 s2 s3 s4 s5# 0 05-21 27.93 28.18 29.39 40.52 26.26# 1 05-22 58.08 50.61 51.62...

2019-10-16 18:28:18 100

原创 DataFrame的groupby

groupby将数据先按指定维度分组之后,再进行sum、mean等操作..import pandas as pddf = pd.DataFrame({ '学号':[1,2,3,4,5,1,2,3,4,5], '科目':['数学','数学','数学','数学','数学','语文','语文','语文','语文','语文'], '成绩':[90,82,74,52,80,7...

2019-10-16 12:14:38 449

原创 DataFrame与Series的运算

原则Series索引值与DataFrame列名相同的项进行相加函数计算add()、sub()、mul()、div()#Series中行索引与DataFrame列标签索引相加得到值import pandas as pds = pd.Series([1,2,3,4])df = pd.DataFrame({ 0:[10,20,30,40], 1:[100,200,...

2019-10-15 12:08:28 1719

原创 DataFrame的applymap和apply

DataFrame的applymap将DataFrame的每个元素经过函数运算之后转化成新的元素import pandas as pddf = pd.DataFrame({ 'a':[1,2,3], 'b':[4,5,6]},index=['L1','L2','L3'])print(df)df1 = df.applymap(lambda x:'even' if...

2019-10-14 20:09:10 466

原创 DataFrame的向量计算

arr.csvdate,s1,s2,s3,s4,s505-21,27.93 ,28.18 , 29.39 ,40.52 , 26.2605-22,58.08 ,50.61 , 51.62 ,48.55 ,54.0305-23,38.67 ,31.73 ,57.91 ,59.23 ,49.0805-24,45.83 ,31.48 ,45.94 ,71.21 ...

2019-10-14 18:07:47 1259

原创 加载CSV到DataFrame和Pandas的轴

从arr.csv文件中读取arr.csvdate,s1,s2,s3,s4,s505-21,27.93 ,28.18 , 29.39 ,40.52 , 26.2605-22,58.08 ,50.61 , 51.62 ,48.55 ,54.0305-23,38.67 ,31.73 ,57.91 ,59.23 ,49.0805-24,45.83 ,31.48 ,4...

2019-10-14 15:57:30 209

原创 读取DataFrame的数据单元

取某行loc、iloc取某列[xxx]转换成Numpy arrayvaluesimport numpy as npimport pandas as pdarr = pd.DataFrame({ 's1': [27.93, 58.08, 38.67, 45.83, 70.26, 46.61, 49.73, 34.02, 56.64, 57.28], '...

2019-10-14 10:45:51 1624

原创 DataFrame的用法

创建方法#创建方法df_1 = pd.DataFrame({'A':[0,1,2],'B':[3,4,5]})print(df_1)#创建方法 二位数组,列标签 行索引df_2 = pd.DataFrame([[0,1,2],[3,4,5]], columns=['A','B','C'],index=[1,2])print(df_2)...

2019-10-12 18:29:45 368

原创 Numpy二维数组和Numpy中的轴

二维数组的表示方法:python原生:列表的列表Numpy:ndarrayPandas:DataFrame二维ndarray与Python List1.ndarry性能更好2.ndarray有mean()、std()、sum()等更多的跟数学计算相关的内置函数,作用于整个数组3.访问语法差别:a[1,2](Numpy ndarray)、a[1][2](Python Li...

2019-10-11 15:24:55 1902

原创 Pandas绘图

‘bar’ or 'barh' for bar plots#条状图‘hist’ for histogram #直方图‘box’ for boxplot #箱线图‘kde’ or 'density' for density plots #密度图‘area’ for area plots #区域图‘pie’ for pie plots #饼图import pandas a...

2019-09-29 18:09:16 125

原创 Pandas Series

Pandas Series相对于Numpy ndarry1.更多的函数describe()...2相似下标方式访问:s[10]、s[3:10]...for循环:for item in s向量计算:+、-、*、/、...科学计算:mean、sum、max...比Python List快import pandas as pddef dir_judge(var1...

2019-09-28 17:13:50 223

原创 Numpy的+=操作、Numpy中的随机数

原地操作与非原地操作+=:原地操作+:非原地操作对于Numpy array切片的修改,是原地操作,会影响原有array对于Python List切边的修改,是非原地操作,不会影响原有Listrandom.rand()根据给定维度生成[0,1)之间的数据random.randn()根据给定维度(不给维度时为单个数),产生符合标准正态分布的随机数random.nor...

2019-09-27 20:08:23 391

原创 Numpy和Pandas

NumpyNumerical Python高性能科学计算和数据分析的基础包提供多维数组对象,具有矢量运算能力Pandas基于Numpy,提供高性能的矩阵运算具有更多方便矩阵计算中使用的方法一维数组Pandas:SeriesNumpy:ndarrayndarray与Python List的相似处通过位置访问元素l[0]、l[2:5]、l[:3]、l[2...

2019-09-25 18:13:24 131

原创 面向对象

类由 类的名称、类的属性、类的方法构成类的定义class 类名: def 方法名(self[,参数列表])定义的方法默认要传入一个self参数,表示自己,self参数必须是第一个参数创建对象:对象名 = 类名()类名的命名规则则安装“大驼峰”属性:实例属性:所属于具体的实例对象,不同实例对象直接按的实例属性互不影响类属性所属于类对象,多个实例对象之间共享...

2019-09-24 15:29:24 77

原创 Queue

进程彼此之间相互隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列Queue和管道Pipe,这两种方式都是使用消息传递的。创建队列的类(底层就是以管道和锁定的方式实现):Queue([maxsize]):创建共享的进程队列,Queue是多进程安全的队列,可以使用Queue实现多进程之间的数据传递参数介绍:maxsize是队列中允许最大项数,省略则无大...

2019-09-23 18:10:16 164

原创 Pool

Pool可以提供指定数量的进程,供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么会创建一个新的进程用来执行该请求;但如果池中的进程数已经达到规定最大值,那么该请求就会等待,直到池中有进程结束,才会创建新的进程来执行它。Pool方法进程池方法:apply(func[,args[,kwds]]):阻塞的执行,比如创建一个有3个线程的线程池,当执行时是创建完一个,执行完函数再...

2019-09-23 11:47:13 247

原创 Python中的多线程和多进程

Python中存在多线程,但是很遗憾,python仅仅只支持一个线程的运行。主要原因是,thread不支持守护线程。当主线程退出时,所有的子线程不管它们是否还在工作,都会被强行退出。有时我们并不希望发生这种行为,这时就引入了守护线程的概念。threading模块支持守护线程。用multiprocessing替代Thread库multiprocessing库的出现很大程度上是为了弥补th...

2019-09-23 10:43:23 113

原创 进程与线程的区别

1.线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位;2.一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线。3.进程之间相互独立,但同一进程下的各个线程之间共享程序的内存空间(包括代码段、数据集、堆等)及一些进程级的资源(如打开文件和信号),某进程内的线程在其它进程不可见;4.调度和切换:线程上下文切换比进程上下文切换要快得多。总之,线程和进程都是一种抽...

2019-09-23 07:50:24 93

原创 Python多进程多线程

大部分操作系统(如Windows、Linux)的任务调度是采用时间片轮转的抢占式调度方式,也就是说一个任务执行一小段时间后强制暂停去执行下一个任务,每个任务轮流执行。任务执行的一小段时间叫做时间片,任务正在执行时的状态叫运行状态,任务执行一段时间后强制暂停去执行下一个任务,被暂停的任务就处于就绪状态 等待下一个属于它的时间片的到来。这样每个任务都能得到执行,由于CPU的执行效率非常高,时间片非常...

2019-09-20 11:18:42 83

原创 time模块

常用的一种获取当前时间以及时间格式化的模块,模块名称timetime模块在Python原生安装中就存在所以不需要进行任何安装操作。直接使用即可。导入模式:import timetime模块-常用方法time.altzone 返回格林威治西部的夏令时地区的偏移秒数。time.asctime接受时间元组并返回24个字符的字符串time.localtime([secs])...

2019-09-18 16:45:54 126

原创 异常

Python遇到错误后,会引发异常。如果异常对象并未处理或被捕捉,则程序就会用所谓的回溯(Traceback,一种错误信息)来终止。处理异常异常是指在程序执行过程中发生的一个事件,会影响程序的正常运行,所以一般需要进行捕获异常并处理。异常的捕获使用try/except/finally语句进行捕获操作,并告诉python发生异常时怎么办。怎么简单处理文件异常?我们将导致错误的代码...

2019-09-16 11:56:05 153

原创 文件夹的操作

python编程时,经常和文件、目录打交道,这时就离不开了os模块。os模块包含普遍的操作系统功能,与具体的平台关系。os.getcwd() 得到当前工作的目录。os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表os.remove()删除指定文件os.rmdir()删除指定目录os.mkdir()创建目录注意:这样只能建立一层,要想递归建立可...

2019-09-12 16:45:45 162 1

原创 类方法与静态方法

1:普通方法:def fun_name(self,...): pass外部用实例调用2:静态方法:通过装饰器@staticmethod 装饰不能访问实例属性参数不能传入self与类相关但是不依赖类与实例的方法3:类方法:@classmethod不能访问实例属性参数必须传入cls必须传入cls参数(即代表了此类对象----区别----self代表实例对...

2019-09-12 14:17:32 232

原创 内置类属性

Python内置类属性:__dict__:类的属性(包括一个字典,由类的属性名:值组成)实例化类名.__dict____doc__:类的文档字符串(类名.)实例化类名.__doc____name__:类名,实现方式 类名.__name____bases__:类的所有父类构成元素(包含了一个由所有父类组成的元组)__name__:如果是放在Modules模块中,就表示是模块的名字...

2019-09-11 09:57:48 269

原创 python中的yield

yield的作用就是把一个函数变成一个generator,带有yield的函数不再是一个不同函数,Python解释器会将其视为一个生成器,如调用Xun函数,不会执行该函数,而是返回一个iterable迭代对象!区别:与return类似,都可以返回值,但不一样的地方,yield可以返回多次值,而return只能返回一次。yield的作用是把一个函数变成一个generator使用生成器可以...

2019-09-05 10:49:24 126

原创 可变对象与不可变对象的传递

在python中,string,tuples,和numbers是不可更改的对象,而list,dict,set等则是可以修改的对象。不可变类型:变量赋值a = 5 后再 赋值 a = 10,这里实际是新生成一个int值对象10,再让a指向它,而5被丢弃,不是改变a的值,相当于新生成了a。可变类型:变量赋值la=[1,2,3,4]后再赋值la[2]=5则是将list la的第三个元素值更改,本...

2019-09-04 16:03:39 285

原创 python中匿名函数(imooc)

高阶函数可以接受函数做参数,有时候,我们不需要显示地定义函数,直接传入匿名函数更方便。在python中,对匿名函数提供了有限支持。还是以map()函数为例,计算f(x) = x^2,除了定义一个f(x)的函数外,还可以直接传入匿名函数:map(lambad x:x*x,[1,2,3,4,5,6,7,8,9])[1, 4, 9, 16, 25, 36, 49, 64, 81]lam...

2019-08-31 15:46:01 411

原创 获取空气质量保存到csv文件中

案例描述:为了能有效地提取并利用网络信息并提高工作效率,出现了网络爬虫利用网络爬虫实时获取城市的空气质量利用beautifulsoup4获取所有城市的空气质量将获取的所有城市空气质量保存成csv数据文件#-*- coding:utf-8 -*-import requestsfrom bs4 import BeautifulSoupdef process_city(cit...

2019-08-30 16:34:59 757

原创 爬所有城市的空气质量

#-*- coding:utf-8 -*-import requestsfrom bs4 import BeautifulSoupdef process_city(city_str): url = 'http://pm25.in/' url = url+city_str r = requests.get(url) soup = BeautifulSoup(r...

2019-08-30 09:52:48 174

原创 BeatifulSoup解析网页

BeautfulSoup用于解析HTML或XMLpip install beautifulsoup4import bs4步骤1.创建BeautifulSoup对象2查询节点find,找到第一个满足条件的节点find_all,找到所有满足节点的节点创建BeautifulSoup对象bs = BeautifulSoup(url,html_parser,指...

2019-08-28 16:07:56 238

原创 网络爬虫、request模块

自动抓取互联网信息的程序;利用互联网数据进行分析、开发产品步骤:1.通过网络链接获取网页内容2.对获得的网页内容进行处理requests模块是一个简洁且简单的处理HTTP请求的工具支持非常丰富的链接访问功能,包括URL获取,HTTP会话,Cookie记录等requests网页请求:get() 对应HTTP的GET方式post() 对应HTTP的POST方式,用...

2019-08-28 11:21:51 199 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除