自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 知识点总结 2022-8-24

由于访问网页的时候我们是使用python,直接访问会被许多网站拒绝,所以我们需要更改自己的头部数据,这里可以从浏览器获取自己的头部数据。,用来判断字符串是否符合一定标准。第二种findall函数。第一种search函数。

2022-08-24 23:23:56 224 1

原创 知识点总结 2022-8-19

Series是Python的Pandas库中的一种数据结构,它类似一维数组,由一组数据以及与这组数据相关的标签(即索引)组成,或者仅有一组数据而没有索引也可以创建一个简单的Series对象。库中的一种数据结构,它是由多种类型的列组成的二维表数据结构,类似于Excel、SQL或Series对象构成的字典。DataFrame是最常用的Pandas对象,它与Series对象一样支持多种类型的数据。导入HTML网页数据主要使用Pandas的read_html方法,该方法用于导入带有table标签的网页表格数据。

2022-08-19 22:25:08 534

原创 知识点总结 2022-8-17

元组中的元素虽然是不可变的,但如果元组中的元素是指向一个可变的列表,那么我们依然是可以修改列表中的内容的。需要注意的一点是:赋值号左侧的变量名数量,必须跟右侧序列的元素数量一致,否则通常都会报错。基础语法:[expression for target in iterable]生成一个元组被称为打包,将其赋值给等量的变量被称为解包。如何创建一个只有一个元素的元组。...

2022-08-17 21:55:32 99

原创 知识点总结 2022-8-16

在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 yield 方法时从当前位置继续运行。与普通函数不同的是,生成器是一个返回生成器对象的函数,它只能用于进行迭代操作,更简单的理解是 —— 生成器就是一个特殊的迭代器。定义一个生成器,很简单,就是在函数中,使用 yield 表达式代替 return 语句即可。lambda 是个关键字,然后是冒号,冒号左边是传入函数的参数,冒号后边是函数实现。lambda 表达式。...

2022-08-16 22:10:42 111

原创 知识点总结 2022-8-15

rpartition(sep) 在字符串中自右向左搜索sep参数指定的分隔符,如果找到,返回一个 3 元组 ('在sep前面的部分', 'sep', '在sep后面的部分');如果未找到,则返回 ('', '', '原字符串')partition(sep) 在字符串中搜索 sep 参数指定的分隔符,如果找到,返回一个 3 元组 ('在sep前面的部分', 'sep', '在sep后面的部分');如果未找到,则返回 ('原字符串', '', '')使用类型构造器,也就是set(): set("abc")..

2022-08-15 18:42:08 186 1

原创 最终项目结束总结 2022-8-13

由于时间比较紧张,学习的内容量很大,在爬虫方面还有许多待解决的问题,所以爬取的数据相对有限,尤其是在写正则表达式的时候,一定要有灵活的思维,以及严谨的操作,能够复制粘贴的地方就一定不要自己手写代码,很容易出现错误,同时不能在一棵树上吊着,一个地方不通就换一种形式,也许就可以完成。在数据分析方面,由于可选的函数还有参数太多太杂,在写代码的过程中往往会遇到不知道使用哪一个函数的困境,只能回过头来去翻书本,有的时候知识储备跟不上思路,就只能去网上找方法,再将其运用到自己的代码之中,这个过程让我受益匪浅。...

2022-08-13 18:39:14 173

原创 最终项目(待完善) 2022-8-12

首先由于价格是字符串型数据不太好进行分析我们对其进行处理。可以发现最早和最晚的出版日期分别为1962年和2021年。我们分析了图书评分的数据,接下来我们分析图书价格的数据。可以发现大部分图书的价格都在20~30元这个区间。可以发现大部分书都在2002~2012年出版。这样我们就将字符串中的数值型数据提取出来了。接着我们来绘制一下它的频率直方图。然后我们进行一些基础的分析。...

2022-08-12 21:43:21 74

原创 最终项目(待完善) 2022-8-11

这里我们可以发现,不同信息之间是用“/”隔开的,这里我们使用split方法对其进行分割,大致分为,作者,译者,出版社,出版日期,价格五项。首先,观察excel表我们可以发现,在详细信息栏有许多内容被混在了里面,我们需要将其进行切割分离出来。接上文,我们完成了信息的爬取,形成了一个excel文件,接下来我们将对其进行数据分析。由于部分信息可能与设置有误差,需要对齐进行手动的校准,最后excel表出来的效果如下。可见评分的最大值,最小值以及平均值。接下来我们进行评分的分布直方图绘制。接着我们来分析评分。...

2022-08-11 19:12:32 112

原创 最终项目(待完善) 2022-8-10

首先,我们来进行数据的爬取,本次使用的是urllib模块。数据爬取部分到此结束,接下来将对数据具体分析。对于豆瓣图书Top250进行数据分析。

2022-08-10 20:03:05 58

原创 暑期实践爬虫学习 2022-8-9

豆瓣项目正式完成,爬虫学习也到此告一段落,下一步是暑期最终项目的完成。其中没有保存sqllite数据库的操作。爬取豆瓣TOP250源代码。

2022-08-09 13:11:50 56

原创 暑期实践爬虫学习 2022-8-8

建议在正则表达式中,被比较的字符串前面加上r,不用担心转义字符。本质上是字符串,用来判断字符串是否符合一定标准。下面对常用函数进行说明。第二种findall函数。第一种search函数。

2022-08-08 21:15:21 136

原创 暑期实践爬虫学习 2022-8-7

beautifulsoup模块学习。

2022-08-07 21:19:36 58

原创 暑期实践爬虫学习 2022-8-6

由于访问网页的时候我们是使用python,直接访问会被许多网站拒绝,所以我们需要更改自己的头部数据,这里可以从浏览器获取自己的头部数据。进行Python的爬虫工作前首先需要进行准备工作,即导入所需要的库,这里举出了本次实验中所需要的库。这里的学习使用的是urllib模块,可能相对request模块更加繁琐,后续视情况可能更改。这里我们使用的是urllib模块,以下例子也都是使用该模块。首先我们需要获取网页的url,即地址,这里以豆瓣为例。接着我们需要获取需要爬取的网页所需的一系列信息。...

2022-08-06 17:11:50 165

原创 暑期实践阶段性总结 2022-8-5

经过一个月的python学习,目前已经完成了基础学习,pandas数据分析,以及matplotlib可视化图表的基本操作,下一步的学习目标是完成爬虫的基础学习,以及最终实践作业。在字符串中,格式化字符串的套路就是使用一对花括号({})来表示替换字段,就在原字符串中先占一个坑的意思,然后真正的内容被放在了format()方法的参数中。我们不关心较长的可迭代对象多出的数据时,使用 zip() 函数无疑是最佳的选择,因为它自动裁掉多余的部分。如果传入的可迭代对象长度不一致,那么将会以最短的那个为准。...

2022-08-05 21:49:14 102

原创 暑期实践第三十二天 2022-8-4

使用plot函数和scatter函数都可以实现,scatter函数具有更高的灵活度,可以单独控制使得每个散点与数据匹配,并让每个散点具有不同的属性。还是通过pie函数来实现,一个关键参数wedgeprops,字典类型,用于设置饼形图内外边界的属性,如环的宽度、环边界颜色和宽度。实现堆叠面积图的关键在于增加y轴,通过增加多个y轴数据,形成堆叠面积图。分裂饼形图是将认为主要的饼形图部分分裂出来,以达到突出显示的目的。绘制销售收入与广告费散点图,观察收入与广告费的相关性。4.3带阴影的饼状图。...

2022-08-04 18:51:32 69

原创 暑期实践第三十一天 2022-8-3

autopct:设置饼图百分比,可以使用格式化字符串或format函数。Matplotlib绘制折线图主要使用plot函数。density:显示频率统计结果,默认None。labels:每一块饼形图外侧显示的说明文字。explode:每一块饼形图离中心的距离。bottom:可选参数,柱形图的y坐标。log: y坐标轴是否选择指数刻度。stacked:是否堆积状图。绘制柱形图主要使用bar函数。使用5行代码绘制简单的柱形图。height:柱子的高度。mec:标记边框的颜色。主要使用hist函数。......

2022-08-03 18:17:57 317

原创 暑期实践第三十天 2022-2-8

如{'fontsize':20,'fontweight':20,'va':'bottom','ha':'center'}**kwargs:通用绘图参数,如字体大小fontsize=12,垂直对齐方式ha='center'、水平对齐方式va='center'。grid也有很多参数,如颜色,网格线方向(参数axis='x'隐藏x轴网格线,y就是隐藏y轴网格线)、网格线样式和网格线宽度等。loc:字符串,标题水平位置,参数值为center,left,right,分别表示水平居中,水平居左和水平居右,默认居中。..

2022-08-02 21:29:53 91

原创 暑期实践第二十九天 2022-8-1

主要包括颜色设置、线条样式、标记样式、设置画布、坐标轴、添加文本标签、设置标题和图例、添加注释文本、调整图表与画布边缘间距以及其他设置等。一张完整的图表一般包括画布、图表标题、绘图区、数据系列、坐标轴及标题、图例、文本标签、网格线。数据分析图表的类型包括条形图、柱状图、折线图、饼图、散点图、面积图、环形图、雷达图等。format_string控制曲线格式的字符串,包括颜色、线条样式和标记样式。Matplotlib基本绘图主要使用plot函数。1.1基本绘图plot函数。...

2022-08-01 20:46:00 213

原创 暑期实践第二十八天 2022-7-31

window时间窗口的大小,有两种形式(int或offset)。如果使用int,则数值表示计算统计量的观测值的数量,即向前几个数据。用前面的值填充空值,使用ffill方法或者pad方法。min_periods每个窗口最少包含的观测值数量,小于这个值的窗口结果为NA。通过调用ohlc函数得到数据汇总结果,即开始值(open)、结束值(close)、最高值(high)、最低值(low)将数据从低频率转换到高频率时,就不需要聚合了,将其重采样到日频率,默认会引入缺失值。(三)用后值填充,使用bfill方法。...

2022-07-31 20:37:44 65

原创 暑期实践第二十七天 2022-7-30

举个例子首先创建一个包含9个一分钟的时间序列,然后使用resample方法转换为3分钟的时间序列并对索引列进行求和计算。降采样是周期由高频率转向低频率。例如,将5min的股票交易数据转换为日交易,按天统计的销售数据转换为按周统计。在Pandas中,对时间序列的频率的调整称之重新采样,即将时间序列从一个频率转换到另一个频率的处理过程。重采样主要使用resample方法,该方法用于对常规时间序列重新采样和频率转换,包括降采样和升采样。数据降采样会涉及到数据的聚合。聚合的方式主要包括求和、求均值等。...

2022-07-30 12:05:41 112

原创 暑期实践第二十六天 2022-7-29

resample方法主要应用于时间序列的频率转换和重采样,它可以从日期中获取年、月、日,星期或季节等,结合数据计算函数就可以实现按年、月、日、星期或季度等不同时期来统计数据。注意按日期统计数据的过程中,可能会出现提示类型不正确的错误信息,上述错误是由于resample函数要求索引必须为日期型引起的。DaraFrame对象中的to_period()方法可以将时间戳转换为时期,从而实现按时期显示数据,前提是日期必须设置为索引。axis行列索引,0为行索引,1为列索引,默认0。按时期统计并显示数据。...

2022-07-29 21:56:38 168

原创 暑期实践第二十五天 2022-7-28

可选hour、minute、second、millisecond(毫秒)、microsecond(微秒)、nanosecond(纳秒)to_determine可以用来批量进行日期数据转换,对于处理大数据非常的实用和方便,它可以将日期和数据转换成所需的各种格式。还可以实现从DataFrame对象中的多列,如年、月、日各列组合成一列日期。而键值是常用的日期缩略语。必选year、month、day。使用Pandas的to_determine方法。1.1DataFrame的日期数据转换。......

2022-07-28 12:26:06 165

原创 暑期实践第二十四天 2022-7-27

假设一个DataFrame对象包含了学生的“语文”“数学”和“英语”成绩,而另一个DataFrame对象则包含了学生的体育成绩,现在将他们合并。例如,设置该参数值为left,就是让df1保留所有的行列数据,df2则根据df1的行列进行补全。merge方法是按照两个DataFrame对象列名相同的列进行连接合并,两个DataFrame对象必须具有同名的列。上述输出结果数据中存在重复列,如编号,如果不想要重复列,可以设置按指定列和列索引合并数据。多对一是指两个数据集的共有列中的数据不是一对一的关系。......

2022-07-27 12:14:17 95

原创 暑期实践第二十三天 2022-7-26

periods表示移动的幅度,可以是正数,也可以是负数,默认值是1,1表示移动一次,注意这里移动的都是数据,而索引是不移动的。freq可选参数,默认值为None,只适用于时间序列,如果这个参数存在,那么会按照参数值来移动时间索引,而数据值不会发生变化。expand布尔型,分割后的结果是否转换为DataFrame,默认值是False。pat字符串、符号或正则表达式,表示字符串分割的依据,默认以空格分割字符串。n整型,分割次数,默认值是-1。通过join方法与split方法结合,以逗号分割宝贝标题。......

2022-07-26 12:12:22 578

原创 暑期实践第二十二天 2022-7-25

上述代码中的name是groupby中“一级分类”的值,group是分组后的数据。group_keys布尔型,默认为True,调用apply函数时,将分组的键添加到索引以标识片段。squeeze布尔型,默认为False,如果可能,减少返回类型的维度,否则返回一致类型。首先创建字典建立的对应关系,然后将字典传递给groupby函数,从而实现数据分组统计。例按“一级分类”分组统计“7天点击量”的平均值和总和一级“订单预定”总和。通过Series对象进行分组统计是,它与字典的方法类似。...

2022-07-25 20:01:14 370

原创 暑期实践第二十一天 2022-7-24

没有包含在小数中的任何列都将保持原样,非输入列的小数元素将被忽略。设置小数位数,主要使用DataFrame对象中的round函数,该函数可以实现四舍五入,而它的decimals参数则用于设置保留小数的位数,设置后的数据类型不会发生变化,依然是浮点型。注意设置千位分割符后,对于程序来说,这些数据将不再是数值型,而是数字和逗号组成的字符串,如果由于程序需要再变成数值型会很麻烦,因此设置千位分隔符要慎重。注意,经过自定义函数处理后的数据将不再是浮点型而是对象型,如果后续计算则首先应该将数据类型进行转换。...

2022-07-24 18:40:50 41

原创 暑期实践第二十天 2022-7-23

kind指定排序算法,值为“quicksort”(快速排序)、“mergesort”(混合排序)、或“heapsort”(堆排),默认值为“quicksort”。na_position空值(NaN)的位置,值为“first”空值在数据开头,值为“last”空值在数据最后,默认值为“last”。ignore_index布尔值,是否忽略索引,值为True标记索引(从0开始按顺序的整数值),值为False忽略索引。dense密集排名,类似最小值排名,但是排名每次只增加1,即排名相同的数据只占一个名次。......

2022-07-23 14:05:54 172

原创 暑期实践第十九天 2022-7-22

如果认为有些数据虽然存在缺失值,但是不影响数据分析,那么可以使用以下方法处理。例如,在上述数据中只保留“宝贝总数量”中不存在缺失值的数据,而类别是否缺失无所谓,则可以使用notnull方法判断。缺失值指的是由于某种原因导致数据为空,这种情况一般有四种处理方式不处理、删除、填充或替换、插值(以均值、中位数、众数等填补)如果使用df[df.isnull()==False]语句,则会将所有不是缺失值的数据找出来,但是只针对Series对象。将缺失值删除,主要使用dropna方法,该方法用于删除含有缺失值的行。..

2022-07-22 13:11:21 154

原创 暑期实践第十八天 2022-7-21

当只有一个参数时,默认是行索引,即抽取整行数据,包括所有列,如抽取第一行数据,df.iloc[0]loc属性以列名(columns)和行名(index)作为参数,当只有一个参数时,默认是行名,即抽取整行数据,包括所有列,如df.loc['A']在数据分析过程中,并不是所有的数据都是我们想要的,此时可以抽取部分数据,主要使用DataFrame对象中的loc属性和iloc属性。使用iloc属性抽取第一行数据,指定行索引即可,如df.iloc[0],输出结果如上。语文110.0。使用切片方法即可实现。......

2022-07-21 12:19:27 91

原创 暑期实践第十七天 2022-7-20

DataFrame是Pandas库中的一种数据结构,它是由多种类型的列组成的二维表数据结构,类似于Excel、SQL或Series对象构成的字典。除了直到名字,还可以指定顺序,从0开始,例如,“sheet_name=0”表示导入第一个sheet页的数据,“sheet_name=1”表示导入第二个Sheet页的数据,以此类推。Dataframe既有行索引也有列索引,它可以看作是由Series对象组成的字典,不过这些Series对象共用一个索引。1.2创建一个DataFrame对象。运行程序输出部分数据。...

2022-07-20 12:09:12 305

原创 暑期实践第十六天 2022-7-19

Series是Python的Pandas库中的一种数据结构,它类似一维数组,由一组数据以及与这组数据相关的标签(即索引)组成,或者仅有一组数据而没有索引也可以创建一个简单的Series对象。与位置索引方法类似,用“[]”表示,里面是索引名称,注意index的数据类型是字符串,如果需要获取多个标签索引值,则用"[[]]"表示,相当于在[]中包含一个列表。除了使用默认索引,还可以通过index参数手动设置索引。注上述结果输出的dtype,是DataFrame数据的数据类型,int为整型,后面的数字表示位数。..

2022-07-19 14:39:43 134

原创 暑期实践第十五天 2022-7-18

是指在一个函数内部中,对外部作用域的变量进行引用,并且一般内部函数作为外部函数的返回值,那么内部函数就被认为是闭包。今日学习进度闭包,装饰器,lambda表达式,装饰器。在不修改函数的情况下添加新功能,拿函数当参数。这样的话,就是先计算平方(装饰器),最后再加1(装饰器),再计算立方(......

2022-07-18 17:27:10 171

原创 暑期实践第十四天 2022-7-17

它本来的功能是将参数转换成字符串类型,但由于我们将它作为变量名赋值了,那么Python就把它给覆盖了.除了可以将多个参数打包为元组,收集参数其实还可以将参数们打包为字典,做法呢,是使用连续的两个星号(对于这种情况,在传递参数的时候就必须要使用关键字参数了,因为字典的元素都是键值对嘛,所以等号(如果一个变量定义的位置是在一个函数里面,那么它的作用域就仅限于函数中,我们将它称为局部变量。通常我们无法在嵌套函数的内部修改外部函数变量的值,除非使用。通常我们无法在函数内部修改全局变量的值,除非使用。...

2022-07-17 17:51:49 147

原创 暑期实践第十三天 2022-7-16

注意使用运算符的话,符号两边都必须是集合类型的数据才可以,不然会报错。使用花括号,元素之间以逗号分隔{"abc","bcd"}使用类型构造器,也就是set()set("abc")由于集合是无序的,所以我们不能使用下标索引的方式去访问它。Python也提供了相应的运算符,可以直接进行运算。使用集合推导式{sforsin"abc"}3.如果想要访问集合中的元素,可以使用迭代的方式。那么检测真子集我们可以使用小于号(今日学习进度集合,函数相关。检测子集可以使用小于等于号(......

2022-07-16 15:59:15 480

原创 暑期实践第十二天 2022-7-15

做法是将作为参数传入的每个可迭代对象的每个元素依次组合成元组,即第i个元组包含来自每个参数的第i个元素。如果可迭代对象的长度不一致,那么Python采取的做法跟。any()函数则是判断可迭代对象中是否存在某个元素的值为真。all()函数函数是判断可迭代对象中是否所有元素的值都为真。如果传入的可迭代对象长度不一致,那么将会以最短的那个为准。zip()函数用于创建一个聚合多个可迭代对象的迭代器。可迭代对象可以对其进行重复的操作,而迭代器则是一次性的。我们不关心较长的可迭代对象多出的数据时,使用。......

2022-07-15 11:55:27 461

原创 暑期实践第十天 2022-7-13

今日学习进度:序列相关,字典相关1.列表、元组、字符串都属于序列,他们的共同点:根据是否能被修改这一特性,可以将序列分为可变序列和不可变序列:比如列表就是可变序列,而元组和字符串则是不可变序列。2.加号(+)与乘号(*)在加减乘除中,只有加号(+)和乘号(*)可以用上,序列之间的加法表示将两个序列进行拼接;乘法表示将序列进行重复,也就是拷贝:3.可变序列以及不可变序列的本质差别:虽然可变序列和不可变序列看上去都是 “可变” 的,但实现原理却是天壤之别:可变序列是在原位置修改 “扩容”,而不可变序列则是

2022-07-13 22:36:31 220

原创 暑期实践第九天 2022-7-12

今日学习进度:字符串相关、 序列1.字符串截取类函数:lstrip(chars=None) 返回一个去除左侧空白字符的新字符串;通过 chars 参数可以指定将要去除的字符串rstrip(chars=None) 返回一个去除右侧空白字符的新字符串;通过 chars 参数可以指定将要去除的字符串strip(chars=None) 返回一个去除左右两侧空白字符的新字符串;通过 chars 参数可以指定将要去除的字符串removeprefix(prefix) 如果存在 prefix 参数指定的前缀子字符串,则返回

2022-07-12 14:16:17 75

原创 暑期实践第八天 2022-7-11

今日学习进度:元组及字符串相关1.元组元组既能像列表那样同时容纳多种类型的对象,也拥有字符串不可变的特性。2.元组与列表的不同之处3.相同之处 4.如何创建一个只有一个元素的元组5.元组的打包和解包生成一个元组被称为打包,将其赋值给等量的变量被称为解包。需要注意的一点是:赋值号左侧的变量名数量,必须跟右侧序列的元素数量一致,否则通常都会报错。6.元组中的元素虽然是不可变的,但如果元组中的元素是指向一个可变的列表,那么我们依然是可以修改列表中的内容的。7.字符串大小写字母相关:capital

2022-07-11 12:01:12 62

原创 暑期实践第七天 2022-7-10

今日Python学习进度:列表,字符串相关1.列表的加法,也就是拼接:2.嵌套列表:3.访问嵌套列表:使用两层循环也可以使用下标 4.创建一个嵌套列表:使用for循环 5.is运算符:用于检验两个目标是否指向同一对象6.深拷贝与浅拷贝浅拷贝:利用列表的 copy() 方法或者切片来实现深拷贝:利用 copy 模块的 deepcopy() 函数来实现浅拷贝可以用于处理一维列表,对于嵌套列表的拷贝,只能拷贝第一层数据,其余仅拷贝其引用: 深拷贝用于处理多维列表

2022-07-10 14:15:36 177

原创 暑期实践第五天 2022-7-8

今日Python学习进度:列表,元组1.如果我们需要顺序访问列表的每一个元素可以使用for循环如果访问任意一个元素可以使用下标注意:Python中第一个元素的下标是0,第二个是1,以此类推Python也支持倒序索引,-1代表的是最后一个2.列表切片将原先的单个索引值改成一个范围即可实现切片左闭右开 ,如果没有参数默认从两端开始或结束,支持设置第三个参数设定步径,如果步径为负则会倒序输出。3.列表增删改方法...

2022-07-08 14:26:38 46

空空如也

空空如也

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

TA关注的人

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