![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
利用Python进行数据分析
文章平均质量分 90
小猞猁啥都学
这个作者很懒,什么都没留下…
展开
-
利用python进行数据分析 第十四章 14.5 2012联邦选举委员会数据库
由于Barack Obama和Mitt Romney是最主要的两名候选人,所以我还专门准备了一个子集,只包。现在,你可以通过pivot_table根据党派和职业对数据进行聚合,然后过滤掉总出资额不足200万美。从这个数据中可以看出,在小额赞助方面,Obama获得的数量比Romney多得多。本书第一版出版已经有5年了,Python已经成为了一个流行的、广泛使用的数据分析语言。还可以对该数据做另一种非常实用的分析:利用cut函数根据出资额的大小将数据离散化到多个面。你可以不相信我,自己看那些数据就知道了。原创 2023-12-15 13:13:31 · 896 阅读 · 0 评论 -
利用python进行数据分析 第十四章 14.3 1880-2010年间全美婴儿姓名
由于两个DataFrame对象中都有"group"和"description",所以为了明确到底谁是谁,我们需要对它。由于这是一个非常标准的以逗号隔开的格式,所以可以用pandas.read_csv将其加载到DataFrame。另一个有趣的趋势是,早年流行于男孩的名字近年来“变性了”,例如Lesley或Leslie。的head命令查看了其中一个文件的前10行(在Windows上,你可以用more命令,或直接在文本编。加一个表示编号的列,然后将该DataFrame添加到一个列表中。prop值为0.02表。原创 2023-12-15 13:08:29 · 829 阅读 · 0 评论 -
利用python进行数据分析 第十四章 数据分析案例
以每小时快照为例,文件中各行的格式为JSON(即JavaScript Object Notation,这是一种常用的。2011年,URL缩短服务Bitly跟美国政府网站USA.gov合作,ᨀ 供了一份从生成.gov或.mil短链接的。这里frame的输出形式是摘要视图(summary view),主要用于较大的DataFrame对象。分组计数,类似于value_counts函数,可以用size来计算。标题索引中含有评分数据大于250条的电影名称,然后我们就可以据此从前面的mean_ratings中选。原创 2023-12-15 12:55:30 · 976 阅读 · 0 评论 -
利用python进行数据分析 第十三章 Python建模库介绍
观察下statsmodels是如何返回Series结果的,附带有DataFrame的列名。下面,我会使用一些基本的statsmodels工具,探索Patsy公式和pandasDataFrame对象如何使用。然后我会简短介绍两个流行的建模工具,statsmodels和scikit-learn。Patsy适合᧿ 述statsmodels的线性模型,因此我会关注于它的主要特点,让你尽快掌握。机器学习方面的学习和应用scikit-learn和TensorFlow解决实际问题的线上和纸质资料很多。原创 2023-12-15 09:32:17 · 1064 阅读 · 0 评论 -
利用python进行数据分析 第十二章 pandas高级应用
假设我们想产生一个和df['value']形状相同的Series,但值替换为按键分组的平均值。与apply类似,transform的函数会返回Series,但是结果必须与输入大小相同。内置的聚合函数,比如mean或sum,通常比apply函数快,也比transform快。包含分类数据的Series有一些特殊的方法,类似于Series.str字符串方法。假设我们知道这个数据的实际分类集,超出了数据中的四个值。这里,load_data的结果没有赋值给Ḁ 个变量,因此传递到[ ]的函数在这一步被绑定到了对象。原创 2023-12-15 09:18:19 · 839 阅读 · 0 评论 -
利用python进行数据分析 第十一章 11.4 时区处理
你可以将Period('2007','A-DEC')看做一个被划分为多个月度时期的时间段中的游标。假设我们有一个年度时期,表达式rolling(250)与groupby很像,但不是对其进行分组,而是创建一个按照250天分组的滑动窗。其实,只需传入一个TimeSeries和一个DataFrame,对DataFrame调用rolling_mean(以及与之类似的函数)会将转换应用到所有的列上(见图11-在将高频率转换为低频率时,超时期(superperiod)是由子时期(subperiod)所属的位置决定。原创 2023-12-13 16:40:49 · 840 阅读 · 1 评论 -
利用python进行数据分析 第十章 10.3 apply:一般性的“拆分-应用-合并”
根据groupby的“拆分-应用-合并”范式,可以进行DataFrame的列与列之间或两个Series之间的。cut和qcut)。回到小费数据集,假设我想要根据day和smoker计算分组平均数(pivot_table的默认聚合类型),Python和pandas中,可以通过本章所介绍的groupby功能以及(能够利用层次化索引的)重塑运。在GroupBy中,当你调用诸如describe之类的方法时,实际上只是应用了下面两条代码的快捷方式。以下面这个简单的随机数据集为例,我们利用cut将其装入长度相等的桶。原创 2023-12-12 15:59:30 · 857 阅读 · 0 评论 -
利用python进行数据分析 第十章 数据聚合与分组运算
你可能已经注意到了,第一个例子在执行df.groupby('key1').mean()时,结果中没有key2列。(name,function)元组组成的列表,则各元组的第一个元素就会被用作DataFrame的列名(可以将这。你并非一定要接受GroupBy自动给出的那些列名,特别是lambda函数,它们的名称是'',这样的辨。如你所见,结果DataFrame拥有层次化的列,这相当于分别对各列进行聚合,然后用concat将结果。合,产生了一个新的Series,其索引为key1列中的唯一值。原创 2023-12-11 19:08:33 · 1004 阅读 · 1 评论 -
利用python进行数据分析 第九章 9.2 使用pandas和seaborn绘图
https://bokeh.pydata.org/en/latest/)和Plotly(https://github.com/plotly/plotly.py),现在。plot.bar()和plot.barh()分别绘制水平和垂直的柱状图。例如,df.plot()等价于df.plot.line()。pandas的大部分绘图方法都有一个可选的ax参数,它可以是一个matplotlib的subplot对象。本章的目的是熟悉一些基本的数据可视化操作,使用pandas,matplotlib,和seaborn。原创 2023-12-11 18:55:23 · 995 阅读 · 1 评论 -
利用python进行数据分析 第九章 绘图和可视化
上面那些由fig.add_subplot所返回的对象是AxesSubplot对象,直接调用它们的实例方法就可以在其它空着的格子里面画图了,如图9-4。rc的第一个参数是希望自定义的对象,如'figure'、'axes'、'xtick'、'ytick'、'grid'、'legend'等。默认情况下,matplotlib会在subplot外围留下一定的边距,并在subplot之间留下一定的间距。随着时间的发展,matplotlib衍生出了多个数据可视化的工具集,它们使用matplotlib作为底层。原创 2023-12-10 17:54:51 · 1119 阅读 · 0 评论 -
利用python进行数据分析 第八章 8.3 重塑和轴向旋转
有一个好处:随着表中数据的添加,item列中的值的种类能够增加。有的情况下,使用这样的数据会很麻烦,你可能会更喜欢DataFrame,不同的item值分别形成。接下来看一个简单的DataFrame,其中的行列索引均为字。这就是多个时间序列(或者其它带有两个或多个键的可观察数据,这里,我们的键是date和item)前两个传递的值分别用作行和列索引,最后一个可选值则是用于填充DataFrame的数据列。关系型数据库(如MySQL)中的数据经常都是这样存储的,因为固定架构(即列名和数据类型)原创 2023-12-10 17:40:02 · 759 阅读 · 0 评论 -
利用python进行数据分析 第八章 数据规整:聚合、合并和重塑
indicator 添加特殊的列_merge,它可以指明每个行的来源,它的值有left_only、right_only或。默认情况下,concat是在axis=0上工作的,最终产生一个新的Series。对于DataFrame,combine_first自然也会在列上做同样的事情,因此你可以将其看做:用传递对象。看到的结果是经过美化的带有MultiIndex索引的Series的格式。有时候,DataFrame中的连接键位于其索引中。由于左边的DataFrame有3个"b"行,右边的有2个,所以最终。原创 2023-12-10 17:32:56 · 936 阅读 · 0 评论 -
利用python进行数据分析 第七章 7.3 字符串操作
findall返回的是字符串中所有的匹配项,而search则只返回第一。达式,常称作regex,是根据正则表达式语言编写的字符串。casefold 将字符转换为小写,并将任何特定区域的变量字符组合转换成一个通用的可比较形式。向数组方法,进行字符串操作。Python能够成为流行的数据处理语言,部分原因是其简单易用的字符串和文本处理功能。由这种修改过的正则表达式所产生的匹配项对象,可以通过其groups方法返回一个由模式各段组。正则表达式ᨀ 供了一种灵活的在文本中搜索或匹配(通常比前者复杂)字符串模式的方式。原创 2023-12-05 21:22:19 · 887 阅读 · 0 评论 -
利用python进行数据分析 第七章 数据清洗和准备
笔记:data.replace方法与data.str.replace不同,后者做的是字符串的元素级替换。在pandas中,我们采用了R语言中的惯用法,即将缺失值表示为NA,它表示不可用not available。DataFrame的duplicated方法返回一个布尔型Series,表示各行是否是重复行(前面出现过的。如果DataFrame的Ḁ 一列中含有k个不同的值,则可以派生出一个k列矩阵或DataFrame(其值全为。如果DataFrame中的Ḁ 行同属于多个分类,则事情就会有点复杂。原创 2023-12-05 21:17:14 · 1251 阅读 · 0 评论 -
利用python进行数据分析 第六章 6.2 二进制数据格式
pandas的ExcelFile类或pandas.read_excel函数支持读取存储在Excel 2003(或更高版本)中的表。的Python SQL工具,它抽象出了SQL数据库中的许多常见差异。Feather:我与R语言社区的Hadley Wickham设计的一种跨语言的列存储文件格式。存储在表单中的数据可以read_excel读取到DataFrame(原书这里写的是用parse解析,但代码中。实现数据的高效二进制格式存储最简单的办法之一是使用Python内置的pickle序列化。原创 2023-11-25 14:43:36 · 886 阅读 · 0 评论 -
利用python进行数据分析 第六章 数据加载、存储与文件格式
Python有许多可以读写常见的HTML和XML格式数据的库,包括lxml、Beautiful Soup和html5lib。pandas有一个内置的功能,read_html,它可以使用lxml和Beautiful Soup自动将HTML文件中的表。pandas.read_html有一些选项,默认条件下,它会搜索、尝试解析标签内的的表格数据。其中一些函数,比如pandas.read_csv,有类型推断功能,因为列数据的类型不属于数据类型。(pandas文档中也使用过),它记录了银行倒闭的情况。原创 2023-11-25 14:35:53 · 1015 阅读 · 0 评论 -
利用python进行数据分析 第五章 5.3 汇总和计算描述统计
利用DataFrame的corrwith方法,你可以计算其列或行跟另一个Series或DataFrame之间的相关系。中ᨀ 取单个值(如sum或mean)或从DataFrame的行或列中ᨀ 取一个Series。另一方面,DataFrame的corr和cov方法将以DataFrame的形式分别返回完整的相关系数或协方差。Series的corr方法用于计算两个Series中重叠的、非NA的、按索引对齐的值的相关系数。返回的唯一值是未排序的,如果需要的话,可以对结果再次进行排序(uniques.sort())。原创 2023-11-21 11:12:14 · 32 阅读 · 0 评论 -
利用python进行数据分析 第五章 5.2 基本功能
默认情况下,DataFrame和Series之间的算术运算会将Series的索引匹配到DataFrame的列,然后。许多函数,如drop,会修改Series或DataFrame的大小或形状,可以就地修改对象,不会返回新的。如果Ḁ 个索引值在DataFrame的列或Series的索引中找不到,则参与运算的两个对象就会被重新索。pandas对象的一个重要方法是reindex,其作用是创建一个新对象,它的数据符合新的索引。这里的函数f,计算了一个Series的最大值和最小值的差,在frame的每列都执行了一次。原创 2023-11-16 20:33:17 · 44 阅读 · 1 评论 -
利用python进行数据分析 第五章 pandas入门
如果你使用的是Jupyter notebook,pandas DataFrame对象会以对浏览器友好的HTML表格的方式。要使用pandas,你首先就得熟悉它的两个主要数据结构:Series和DataFrame。注意,返回的Series拥有原DataFrame相同的索引,且其name属性也已经被相应地设置好了。在这个例子中,sdata中跟states索引相匹配的那3个值会被找出来并放到相应的位置上,但由。DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字。原创 2023-11-16 20:11:19 · 39 阅读 · 1 评论 -
利用python进行数据分析 第四章 4.2 通用函数:快速的元素级数组函数
假设我们想要根据cond中的值选取xarr和yarr的值:当cond中的值为True时,选取xarr的值,否则。这些都是一元(unary)ufunc。mean和sum这类的函数可以接受一个axis选项参数,用于计算该轴向上的统计值,最终结果是一。顶级方法np.sort返回的是数组的已排序副本,而就地排序则会修改数组本身。这里,arr.mean(1)是“计算行的平均值”,arr.sum(0)是“计算每列的和”。在多维数组中,累加函数(如cumsum)返回的是同样大小的数组,但是会根据每个低维的切片沿。原创 2023-11-13 14:29:12 · 27 阅读 · 0 评论 -
利用python进行数据分析 第四章 基本的索引和切片
花式索引(Fancy indexing)是一个NumPy术语,它指的是利用整数数组进行索引。一样,数组的比较运算(如==)也是矢量化的。在多维数组中,如果省略了后面的索引,则返回对象会是一个维度低一点的ndarray(它含有高一。NumPy数组的索引是一个内容丰富的主题,因为选取数据子集或单个元素的方式有很多。选取这三个名字中的两个需要组合应用多个布尔条件,使用&(和)、|(或)之类的布尔算术运算。这个花式索引的行为可能会跟Ḁ 些用户的预期不一样(包括我在内),选取矩阵的行列子集应该是。原创 2023-11-10 19:07:13 · 82 阅读 · 0 评论 -
利用python进行数据分析 第四章 NumPy基础:数组和矢量计算
NumPy最重要的一个特点就是其N维数组对象(即ndarray),该对象是一个快速而灵活的大数据。组都有一个shape(一个表示各维度大小的元组)和一个dtype(一个用于说明数组数据类型的对。ndarray是一个通用的同构数据多维容器,也就是说,其中的所有元素必须是相同类型的。ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。多函数,其中一些的名字与Python的内置函数重名(比如min和max)。用于读写磁盘数据的工具以及用于操作内存映射文件的工具。的命名空间很大,包含许。原创 2023-11-10 18:15:05 · 168 阅读 · 0 评论