这意味着,保留数据的上下文并组合来自不同来源的数据 - 这两个在原始的 NumPy 数组中可能容易出错的任务 - 对于 Pandas 来说基本上是万无一失的。...通用函数:索引对齐 对于两个Series或DataFrame对象的二元操作,Pandas 将在执行操作的过程中对齐索引。这在处理不完整数据时非常方便,我们将在后面的一些示例中看到。...序列中的索引对齐 例如,假设我们正在组合两个不同的数据源,并且按照面积,找到美国前三的州,并且按人口找到美国前三的州: area = pd.Series({'Alaska': 1723337, 'Texas...T 0 -5 0 -6 -4 1 -4 0 -2 2 2 5 0 2 7 请注意,这些DataFrame或Series操作,如上面讨论的操作,将自动对齐两个元素之间的索引: halfrow = df.iloc...,Pandas 中的数据操作将始终维护数据上下文,这可以防止在处理原始 NumPy 数组中的异构和/或未对齐数据时,可能出现的愚蠢错误。
1、Series序列 系列(Series)是能够保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组。轴标签统称为索引。 ?...2、从ndarray创建一个系列 如果数据是ndarray,则传递的索引必须具有相同的长度。...如果没有传递索引值,那么默认的索引将是范围(n),其中n是数组长度,即[0,1,2,3…. range(len(array))-1] - 1]。 ?...5、序列的聚合统计 Series有很多的聚会函数,可以方便的统计最大值、求和、平均值等 ? 6、DataFrame(数据帧) DataFrame是带有标签的二维数据结构,列的类型可能不同。...19、数据合并 两个DataFrame的合并,pandas会自动按照索引对齐,可以指定两个DataFrame的对齐方式,如内连接外连接等,也可以指定对齐的索引列。 ?
本节介绍 Pandas 基础数据结构,包括各类对象的数据类型、索引、轴标记、对齐等基础操作。...除非显式指定,Pandas 不会断开标签和数据之间的连接。 下文先简单介绍数据结构,然后再分门别类介绍每种功能与方法。...不同数据可分为以下几种情况: 多维数组 data 是多维数组时,index 长度必须与 data 长度一致。..., Series 之间的操作会自动基于标签对齐数据。...1] Out[31]: a NaN b -0.565727 c -3.018117 d -2.271265 e NaN dtype: float64 操作未对齐索引的
除非显式指定,Pandas 不会断开标签和数据之间的连接。 下文先简单介绍数据结构,然后再分门别类介绍每种功能与方法。...不同数据可分为以下几种情况: 多维数组 data 是多维数组时,index 长度必须与 data 长度一致。..., Series 之间的操作会自动基于标签对齐数据。...] Out[31]: a NaN b -0.565727 c -3.018117 d -2.271265 e NaN dtype: float64 操作未对齐索引的...总之,让不同索引对象操作的默认结果生成索引并集,是为了避免信息丢失。就算缺失了数据,索引标签依然包含计算的重要信息。当然,也可以用dropna 函数清除含有缺失值的标签。
由于在此过程中未执行对齐,因此导致索引标签重复。...00635.jpeg)] 当我们添加s2和date_series时,将执行对齐,并在项目未对齐的地方返回NaN。...,对多个时间序列对象的操作将在其索引中按Timestamp对齐。...第二步将集中在 Pandas 和数据分析中常用的多种数据可视化类型,包括: 用条形图显示相对差异 用直方图描绘数据的分布 用箱形图和胡须图描述类别数据的分布 用面积图显示累计总数 散点图与两个变量之间的关系...这样做的目的是演示如何在相似行业的选定股票之间的选定时间段内,得出各种股票价格测量值之间的相关性,并演示不同行业之间的股票差异。
由于没有为数据指定索引,于是会自动创建一个 0到N-1(N为数据的长度)的整数型索引。...所有序列的长度必须相同 NumPy的结构化/记录数组 类似于“由数组组成的字典” 由Series组成的字典 每个Series会成为一列。...---- 2.6 算术运算和数据对齐 Pandas 最重要的一个功能是,它可以对不同索引的对象进行算术运算。在将对象相加时,如果存在不同的索引对,则结果的索引就是该索引对的并集。...: returns = price.pct_change() print(returns.head()) Series的corr方法用于计算两个Series中重叠的、非NA的、按索引对齐的值的相关系数...: 方法 描述 isin 计算一个表示“Series各值是否包含于传入的值序列中”的布尔型数组 match 计算一个数组中的各值到另一个不同值数组的整数索引;对于数据对齐和连接类型的操作十分有用 unique
离散 离散变量是一个变量,其中的值基于一组不同的整体值的计数。 离散变量不能是任何两个变量之间的分数。...相关性 相关性是最常见的统计数据之一,直接建立在 Pandas DataFrame中。 相关性是一个单一数字,描述两个变量之间的关系程度,尤其是描述这些变量的两个观测序列之间的关系程度。...对齐基于索引标签提供多个序列对象中相关值的自动关联。 使用标准的过程技术,可以在多个集合中节省很多容易出错的工作量匹配数据。 为了演示对齐,让我们举一个在两个Series对象中添加值的示例。...然后将乘法应用于两个Series对象的对齐值,由于索引相同,它们完美对齐。 索引中的标签不需要对齐。...最后,将删除Series中带有不在新索引中的标签的行。 当您要对齐两个Series以对两个Series中的值执行操作但Series对象没有由于某种原因对齐的标签时,重新索引也很有用。
pandas 数据结构的集成数据对齐功能使 pandas 在处理带标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择使不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...与库的其他部分一样,pandas 将自动对齐带有多个输入的 ufunc 的标记输入。例如,在两个具有不同顺序标签的Series上使用numpy.remainder()将在操作之前对齐。...pandas 数据结构的集成数据对齐功能使 pandas 在处理带标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择使不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...pandas 数据结构的集成数据对齐功能使其在处理带有标签数据的相关工具中脱颖而出。 注意 一般来说,我们选择让不同索引对象之间的操作的默认结果产生索引的并集,以避免信息丢失。...与库的其他部分一样,pandas 将自动对齐具有多个输入的 ufunc 的标记输入。例如,在两个具有不同顺序标签的Series上使用numpy.remainder()将在操作之前对齐。
Python-for-data-时间序列、频率和移位 本文中主要介绍的是pandas中时间序列基础、日期生成及选择、频率和移位等。 ?...时间序列基础 pandas中的基础时间序列种类是时间戳索引的Series;在pandas的外部则表现为Python字符串或者datatime对象。 时间序列作为S型数据索引(不连续) ?...生成连续的S型数据索引 通过date_range方法实现,4个参数: 开始时间 结束时间 频率,默认是天 指定的长度 时间序列算术上的对齐 ? 索引、选择、子集 索引 ? 选择 ?...重复索引的处理 ?...日期范围、频率和移位 日期范围 两个主要的函数: date_range:生成的是DatetimeIndex格式的日期序列 period_range:生成PeriodIndex的时期日期序列 频率别名和偏置类型
Python数据分析——Numpy、Pandas库 总第48篇 ▼ 利用Python进行数据分析中有两个重要的库是Numpy和Pandas,本章将围绕这两个库进行展开介绍。...也可以给某一列赋值一个列表或数组,其长度必须跟DataFrame长度相匹配。如果赋值的是一个Series,则对应的索引位置将被赋值,其他位置的值被赋予空值。...Pandas基本功能 1、重新索引 Pandas对象的一个方法就是重新索引(reindex),其作用是创建一个新的索引,pandas对象将按这个新索引进行排序。对于不存在的索引值,引入缺失值。...3、算数运算和数据对齐 (1)Series 与Series之间的运算 将不同索引的对象进行算数运算,在将对象进行相加时,如果存在时,则结果的索引就是该索引的并集,而结果的对象为空。...8、值计数 用于计算一个Series中各值出现的次数。 9、层次化索引 层次化索引是pandas的一个重要功能,它的作用是使你在一个轴上拥有两个或多个索引级别。
另见 Pandas Index的官方文档 生成笛卡尔积 每当两个序列或数据帧与另一个序列或数据帧一起操作时,每个对象的索引(行索引和列索引)都首先对齐,然后再开始任何操作。...第 5 步将这些不同的序列加在一起以产生一些结果。 仅检查头部,仍不清楚产生了什么。 步骤 6 向其自身添加salary1,以显示两个不同序列添加之间的比较。...这是因为调用此方法的序列具有两个未正式命名的索引级别。 Pandas 还从外部从零开始按整数引用索引。 步骤 3 显示了一种重命名列的简单直观的方法。...为了帮助弄清它们之间的差异,请查看以下概述: concat: Pandas 函数 垂直或水平组合两个或多个 Pandas 对象 仅在索引上对齐 每当索引中出现重复项时发生错误 默认为外连接,带有内连接选项...我们仍然不能简单地划分这两个对象,因为默认情况下,数据帧和序列之间的划分会将数据帧的列与序列的索引对齐,如下所示: >>> crime_table / den_100k [外链图片转存失败,源站可能有防盗链机制
重新索引 pandas 对象上的一个重要方法是reindex,它意味着创建一个新对象,其值重新排列以与新索引对齐。...算术和数据对齐 pandas 可以使处理具有不同索引的对象变得更简单。例如,当您添加对象时,如果任何索引对不相同,结果中的相应索引将是索引对的并集。...在不同索引对象之间的算术操作中,当一个对象中找到一个轴标签而另一个对象中没有时,您可能希望填充一个特殊值,比如 0。...方法计算两个 Series 中重叠的、非 NA、按索引对齐的值的相关性。...,以便将其对齐到另一个不同值的数组;有助于数据对齐和连接类型操作 unique 计算 Series 中唯一值的数组,按观察顺序返回 value_counts 返回一个 Series,其唯一值作为索引,频率作为值
列和索引用于特定目的,即为数据帧的列和行提供标签。 这些标签允许直接轻松地访问不同的数据子集。 当多个序列或数据帧组合在一起时,索引将在进行任何计算之前首先对齐。 列和索引统称为轴。...'Sp'和'Su'之间的大学: >>> college.loc['Sp':'Su'] KeyError: 'Sp' 由于索引未排序,因此前面的命令失败。...当两个传递的数据帧相等时,此方法返回None;否则,将引发错误。 更多 让我们比较掩盖和删除丢失的行与布尔索引之间的速度差异。...第 9 步使用列表推导式遍历所有所需的列名,以使用索引方法get_loc查找其整数位置。 更多 实际上,可以将数组和布尔值列表传递给序列对象,这些对象的长度与您要建立索引的数据帧的长度不同。.../img/00095.jpeg)] 这两个布尔列表的长度与其所索引的轴的长度不同。
,并使用fillchar填充(默认为空格) rjust() 等价于str.rjust,右对齐填充,默认为空格 zfill() 等价于str.zfill,右对齐,前面用0填充到指定字符串长度 下面选取部分函数举例...如果其他为 None,则该方法返回调用 Series/Index 中所有字符串的串联。 sep:str,默认“” 不同元素/列之间的分隔符。默认情况下使用空字符串‘’。...之间的 join-style(没有索引的对象需要匹配调用 Series/Index 的长度)。...要禁用对齐,请在 others 中的任何系列/索引/数据帧上使用 .values。...3) 案例分析 #如果连接的是两个序列,则会一一对应连接 s1 = pd.Series(['A','E','C','D','E']) s2 = pd.Series(['1','2','3','4','5
datetime以毫秒形式存储日期和时间,datetime.timedelta表示两个datetime对象之间的时间差。...表示两个datetime值之间的差(日、秒、毫秒) 字符串和datetime的相互转换 1)python标准库函数 日期转换成字符串:利用str 或strftime 字符串转换成日期:datetime.strptime...pandas通常用于处理成组日期,不管这些日期是DataFrame的轴索引还是列,to_datetime方法可以解析多种不同的日期表示形式。...不同索引的时间序列之间的算术运算会自动按日期对齐 ts[::2]#从前往后每隔两个取数据 2017-06-20 0.788811 2017-06-22 0.009967 2017-06-24 0.981214...2)日期和时间的主要python,datetime、timedelta、pandas.to_datetime等3)以时间为索引的Series和DataFrame的索引、切片4)带有重复时间索引时的索引,
---- 第01章 Pandas基础 第02章 DataFrame运算 第03章 数据分析入门 第04章 选取数据子集 第05章 布尔索引 第06章 索引对齐 第07章 分组聚合、过滤、转换...第08章 数据清理 第09章 合并Pandas对象 第10章 时间序列分析 第11章 用Matplotlib、Pandas、Seaborn进行可视化 ---- In[1]: import pandas...求笛卡尔积 # 创建两个有不同索引、但包含一些相同值的Series In[17]: s1 = pd.Series(index=list('aaab'), data=np.arange(4))...、顺序也相同时,不会生成笛卡尔积;索引会按照它们的位置对齐。...or Alaskan Native 127734.0 Name: BASE_SALARY, dtype: float64 # 再将salary1与其自身相加;查看几个所得结果的长度
没有这两个函数,人们将在这个庞大的数据分析和科学世界中迷失方向。 今天,小芯将分享12个很棒的Pandas和NumPy函数,这些函数将会让生活更便捷,让分析事半功倍。 ...Pandas Pandas是一个Python软件包,提供快速、灵活和富有表现力的数据结构,旨在使处理结构化(表格,多维,潜在异构)的数据和时间序列数据既简单又直观。 ...Pandas非常适合许多不同类型的数据: 具有异构类型列的表格数据,例如在SQL表或Excel电子表格中 有序和无序(不一定是固定频率)的时间序列数据。 ...以下是Pandas的优势: 轻松处理浮点数据和非浮点数据中的缺失数据(表示为NaN) 大小可变性:可以从DataFrame和更高维的对象中插入和删除列 自动和显式的数据对齐:在计算中,可以将对象显式对齐到一组标签...、索引不同的数据转换为DataFrame对象 大数据集的智能标签的切片,高级索引和子集化 直观的合并和联接数据集 数据集的灵活重塑和旋 坐标轴的分层标签(每个刻度可能有多个标签) 强大的IO工具
一、Pandas Series Series是一个一维的数组对象,它包含一个值序列和一个对应的索引序列。...如果数据是ndarray,则传递的索引必须具有相同的长度。...如果没有传递索引值,那么默认的索引将是范围(n),其中n是数组长度,即 [0,1,2,3…,range(len(array))-1] 。...DataFrame既有行索引,也有列索引,它可以被看做为一个共享相同索引的Series的字典。它的列的类型可能不同,我们也可以把Dataframe想象成一个电子表格或SQL表。...的合并,pandas会自动按照索引对齐,可以指定两个DataFrame的对齐方式,如内连接外连接等,也可以指定对齐的索引列。
由于我们没有为数据指定索引,于是会自动创建一个0到N-1(N为数据的长度)的整数型索引。...表5-4 DataFrame的索引选项 整数索引 处理整数索引的pandas对象常常难住新手,因为它与Python内置的列表和元组的索引语法不同。...pandas最重要的一个功能是,它可以对不同索引的对象进行算术运算。...跟不同维度的NumPy数组一样,DataFrame和Series之间算术运算也是有明确规定的。...方法用于计算两个Series中重叠的、非NA的、按索引对齐的值的相关系数。
时间间隔(interval)和时间段:引用特定开始和结束点之间的时间长度;例如,2015 年。...Pandas 时间序列:按时间索引 Pandas 时间序列工具真正有用的地方,是按时间戳索引数据。...重采样,平移和窗口化 使用日期和时间作为索引,来直观地组织和访问数据的能力,是 Pandas 时间序列工具的重要组成部分。...一般情况下,索引数据的优势(操作期间的自动对齐,直观的数据切片和访问等)仍然有效,并且 Pandas 提供了一些额外的时间序列特定的操作。 我们将以一些股票价格数据为例,看看其中的一些。...底部面板显示填补空白的两种策略之间的差异:向前填充和向后填充。 时间平移 另一种常见的时间序列特定的操作是按时间平移数据。Pandas 有两个密切相关的计算方法:shift()和tshift()。
领取专属 10元无门槛券
手把手带您无忧上云