首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas 2.2 中文官方教程和指南(十七)

而真实世界数据中有重复项,即使应该是唯一字段也是如此。 本节描述了重复标签如何改变某些操作行为,以及如何在操作过程防止重复项出现,或者在出现重复项如何检测它们。...categories参数是可选,这意味着创建pandas.Categorical,实际类别应该从数据存在内容推断出来。默认情况下,假定类别是无序。...唯一区别在于返回类型(用于获取)以及只有已在 categories 值才能被赋值。... apply dtype pandas 目前 apply 函数不会保留 dtype:如果你沿着行应用,你会得到一个 Series,其 dtype 为 object(与获取一行相同 -> 获取一个元素将返回基本类型...唯一区别是返回类型(用于获取)和只有已在categories值才能被赋值。 获取 如果切片操作返回DataFrame或类型为Series列,则category dtype 将被保留。

32210

Pandas 2.2 中文官方教程和指南(十一·二)

注意 应用可调用对象之前,将元组键解构为行(和列)索引,因此无法从可调用对象返回元组以索引行和列。 从具有轴选择对象获取使用以下表示法(以.loc为例,但.iloc也适用)。...警告 当您提供与索引类型兼容(或可转换)切片器,.loc是严格。例如,DatetimeIndex中使用整数。这将引发TypeError。....iloc来表示,通过明确索引器上获取位置,并使用位置索引来选择内容。...唯一例外是整数和浮点数数据之间执行联合操作。在这种情况下,整数值将被转换为浮点数。...具有不同数据类型索引之间执行Index.union()索引必须转换为公共数据类型。通常情况下,尽管总是如此,这是对象数据类型。唯一例外是整数和浮点数据之间执行联合时。

12310
您找到你想要的搜索结果了吗?
是的
没有找到

Pandas 2.2 中文官方教程和指南(九·二)

这些 boolean 对象可以索引操作中使用,请参阅布尔索引一节。 布尔归约 你可以应用归约:empty、any()、all() 和 bool() 来提供一种总结布尔结果方法。...每个函数还接受一个可选 level 参数,该参数仅在对象具有分层索引适用。...pipe 可以轻松地方法链中使用您自己或另一个库函数,与 pandas 方法并列使用。...pipe 让您可以方法链轻松使用自己或另一个库函数,与 pandas 方法一起使用。...注意 在编写对性能敏感代码,有充分理由花一些时间成为一个重新索引忍者:许多操作预对齐数据上更快。添加两个不对齐 DataFrame 内部会触发重新索引步骤。

12500

解决ValueError: Shape of passed values is (33, 1), indices imply (33, 2)

解决ValueError: Shape of passed values is (33, 1), indices imply (33, 2)使用Python进行数据分析和处理,我们经常会遇到各种错误和异常...解决这个错误之前,我们需要理解数据形状以及数据对象期望形状之间差异。错误原因通常情况下,这个错误是由于数据对象形状与期望形状匹配所导致。...Python,我们可以使用​​shape​​属性来获取数据维度信息。比如,如果我们有一个名为​​data​​数据对象,我们可以使用​​data.shape​​来获取其形状信息。...确保数据对象形状与期望形状一致。 如果数据维度匹配,我们可以尝试使用NumPy​​reshape​​函数来改变数据对象形状。...检查索引使用此外,我们还需要检查索引使用是否正确。错误信息中指出了索引所暗示形状,我们应该确保我们使用索引保持一致。检查索引是否正确是解决这个错误另一个重要步骤。3.

1K20

pandas连接函数concat()函数「建议收藏」

如果传递了dict,则排序键将用作键参数,除非它被传递,在这种情况下,将选择值(见下文)。任何无对象将被静默删除,除非它们都是无,在这种情况下将引发一个ValueError。...如果为True,请不要使用并置轴上索引值。结果轴将被标记为0,…,n-1。如果要连接其中并置轴没有有意义索引信息对象,这将非常有用。注意,其他轴上索引连接仍然受到尊重。...用于其他n-1轴特定索引,而不是执行内部/外部设置逻辑。 keys:序列,默认值无。使用传递键作为最外层构建层次索引。如果为索引,应该使用元组。 levels:序列列表,默认值无。...用于构建MultiIndex特定级别(唯一值)。否则,它们将从键推断。 names:list,default无。结果层次索引级别的名称。...pandas文档:http://pandas.pydata.org/pandas-docs/stable/ 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/132316

64510

Pandas 2.2 中文官方教程和指南(十一·一)

启用自动和明确数据对齐。 允许直观地获取和设置数据集子集。 本节,我们将重点放在最后一点上:即如何切片、切块和通常获取和设置 pandas 对象子集。...不同索引选择 为了支持更明确基于位置索引,对象选择已经增加了一些用户请求内容。pandas 现在支持三种类型索引。 .loc 主要基于标签,但也可以与布尔数组一起使用。...从具有轴选择对象获取使用以下表示法(以.loc为例,但以下内容也适用于.iloc)。任何轴访问器都可以是空切片:。...警告 当您提供与索引类型兼容(或可转换)切片器,.loc是严格。例如,DatetimeIndex中使用整数。这将引发TypeError。...不同 dtype 索引之间执行Index.union()索引必须转换为公共 dtype。通常,尽管总是如此,这是对象 dtype。唯一例外是整数和浮点数据之间执行联合时。

28410

Pandas 2.2 中文官方教程和指南(二十四)

使用分块 通过将一个大问题分解为一堆小问题,可以使用分块来实现某些工作负载。例如,将单个 CSV 文件转换为 Parquet 文件,并为目录每个文件重复此操作。.../docs/user_guide/gotchas.html DataFrame 内存使用情况 调用 info() ,DataFrame 内存使用情况(包括索引)会显示出来。...使用 in 运算符 Series 上使用 Python in 运算符测试成员身份索引,而不是值之间。...在编程,通常规则是容器被迭代不要改变容器。变异将使迭代器无效,导致意外行为。...编程一个通用规则是,迭代容器不应该改变容器。改变会使迭代器失效,导致意外行为。

29400

Pandas图鉴(四):MultiIndex

你也可以事后用append=True将现有的级别追加到MultiIndex,正如你在下图中看到那样: 其实更典型Pandas,当有一些具有某种属性对象,特别是当它们随着时间推移而演变...这种语法唯一缺点是,当使用两个索引,它会返回一个副本,所以你不能写df.mi[:, 'Oregon'].co['population'] = 10。...这有时可能会让人恼火,但这是在有大量缺失值给出可预测结果唯一方法。 考虑一下下面的例子。你希望一周哪几天以何种顺序出现在右表?...,--Pandas没有直接对应关系: pdi.insert_level(obj, pos, labels, name)用给定值添加一个关卡(必要适当广播),--Pandas不容易做到...官方Pandas文档有一个表格[4],列出了所有~20种支持格式。 指标算术 整体使用索引DataFrame操作,适用与普通DataFrame相同规则(见第三部分)。

42720

Pandas 2.2 中文官方教程和指南(九·一)

pipe 使得方法链中使用您自己或其他库函数与 pandas 方法一起变得容易。...这实现了几件事情: + 重新排序现有数据以匹配新标签集 + 标签位置插入缺失值(NA),该标签处没有数据 + 如果指定,使用逻辑填充缺失标签数据(与处理时间序列数据密切相关)...注意 在编写对性能敏感代码,有充分理由花一些时间成为重新索引高手:许多操作预对齐数据上更快。添加两个未对齐 DataFrame 内部触发重新索引步骤。...fillna()和interpolate()不会对索引顺序执行任何检查。### 重新索引填充限制 limit和tolerance参数重新索引提供额外填充控制。...请参见矢量化字符串方法获取完整描述。 排序 pandas 支持三种排序方式:按索引标签排序、按列值排序以及按两者组合排序。

8200

时间序列

返回当前时刻日 datetime.now().day #16 3.返回当前时刻周数 与当前时刻周相关数据有两个,一个是当前时刻是一周周几;一个是返回当前时刻所在全年周里面是第几周...Python可以选取具体某一间对应值,也可以选某一段时间内值。...因为时间也是有大小关系,所以可通过索引方式布尔索引来对非索引时间进行选取。...1.两个时间之差 经常会用到计算两个时间差,比如一个用户某一平台上生命周期(即用最后一次登录时间 - 首次登陆间) Python两个时间做差会返回一个 timedelta 对象,该对象包含天数...Python实现时间偏移方式有两种: 第一种借助 timedelta(该对象包含天数、秒、微秒三个等级,所以只能偏移天数、秒、微秒单位时间) 第二种是用Pandas日期偏移量(date offset

2K10

五大方法添加条件列-python类比excellookup

# conditions列表第一个条件得到满足,values列表第一个值将作为新特征该样本值,以此类推 df6 = df.copy() conditions = [ (df6['...,是进行分组依据, 如果填入整数n,则表示将x数值分成等宽n份(即每一组内最大值与最小值之差约相等); 如果是标量序列,序列数值表示用来分档分界值 如果是间隔索引,“ bins”间隔索引必须不重叠...right :布尔值,默认为True表示包含最右侧数值 当“ right = True”(默认值),则“ bins”=[1、2、3、4]表示(1,2],(2,3],(3,4] 当bins是一个间隔索引...3 如果为False,则仅返回分箱整数指示符,即x数据第几个箱子里 当bins是间隔索引,将忽略此参数 retbins: 是否显示分箱分界值。...duplicates:如果分箱临界值唯一,则引发ValueError或丢弃非唯一 # 方法五 数据分箱pd.cut()——最类似于excel lookup方法 df7 = df.copy() bins

1.9K20

数据科学原理与技巧 三、处理表格数据

通过笔记本单元格运行ls,我们可以检查当前文件夹文件: ls # babynames.csv indexes_slicing_sorting.ipynb 当我们使用熊猫来读取数据...索引、切片和排序 让我们使用pandas来回答以下问题: 2016 年五个最受欢迎婴儿名字是? 拆分问题 我们可以将这个问题分解成以下更简单表格操作: 分割出 2016 年行。...,并且学会了pandas中表达以下操作: 操作 pandas 读取 CSV 文件 pd.read_csv() 使用标签或索引来切片 .loc和.iloc 使用谓词对行切片 .loc中使用布尔值序列...1920 1940 1960 1980 2000 多个列分组 我们 Data8 中看到,我们可以按照多个列分组,基于唯一值来获取分组。...但在处理文本数据使用pandas内置字符串操作函数通常会更快。

4.6K10

掌握这7种Python数据图表区别,你就是大牛数据分析师!

首先,我们将要使用 matplotlib 这个工具,matplotlib 是一个相对底层 Python 栈描点库,所以它比其他工具库要敲一些命令来做出一个好看曲线。...然后我们调用pandasaggregate函数来获取航空公司数据框架中长度列均值,然后把每个获取值重组到一个新数据模型里。...我们也添加到id列上以实现查找(apply函数传index)。 最后,我们重置索引序列以得到所有的特殊值。没有这一步,Bokeh 无法正常运行。...我们可以用它来按长度分解路由。首先把我们路由分成短、、长三个距离,并在 route_lengths 里计算出它们各占百分比。...如果我们这样做是行不通,因为它需要在 x 轴上数值。我们可以看到不少长名字都出现在早先 id 。这可能意味着航空公司成立前往往有较长名字。 我们可以使用 seaborn 验证这个直觉。

1.5K130

从小白到大师,这里有一份Pandas入门指南

本文包括以下内容: Pandas 发展现状; 内存优化; 索引; 方法链; 随机提示。 阅读本文,我建议你阅读每个你不了解函数文档字符串(docstrings)。...有一些获得这些信息方法: 可以用 unique() 和 nunique() 获取列内唯一值(或唯一数量); >>> df['generation'].unique() array(['Generation...这个数是任意,但是因为数据框类型转换意味着 numpy 数组间移动数据,因此我们得到必须比失去。 接下来看看数据中会发生什么。...索引 Pandas 是强大,但也需要付出一些代价。当你加载 DataFrame ,它会创建索引并将数据存储 numpy 数组。这是什么意思?...得到数据框,「年龄」列是索引。 除了了解到「X 代」覆盖了三个年龄组外,分解这条链。第一步是对年龄组分组。

1.8K11

从小白到大师,这里有一份Pandas入门指南

本文包括以下内容: Pandas 发展现状; 内存优化; 索引; 方法链; 随机提示。 阅读本文,我建议你阅读每个你不了解函数文档字符串(docstrings)。...有一些获得这些信息方法: 可以用 unique() 和 nunique() 获取列内唯一值(或唯一数量); >>> df[ generation ].unique() array([ Generation...这个数是任意,但是因为数据框类型转换意味着 numpy 数组间移动数据,因此我们得到必须比失去。 接下来看看数据中会发生什么。...索引 Pandas 是强大,但也需要付出一些代价。当你加载 DataFrame ,它会创建索引并将数据存储 numpy 数组。这是什么意思?...得到数据框,「年龄」列是索引。 除了了解到「X 代」覆盖了三个年龄组外,分解这条链。第一步是对年龄组分组。

1.7K30

从小白到大师,这里有一份Pandas入门指南

本文包括以下内容: Pandas 发展现状; 内存优化; 索引; 方法链; 随机提示。 阅读本文,我建议你阅读每个你不了解函数文档字符串(docstrings)。...有一些获得这些信息方法: 可以用 unique() 和 nunique() 获取列内唯一值(或唯一数量); >>> df['generation'].unique() array(['Generation...这个数是任意,但是因为数据框类型转换意味着 numpy 数组间移动数据,因此我们得到必须比失去。 接下来看看数据中会发生什么。...索引 Pandas 是强大,但也需要付出一些代价。当你加载 DataFrame ,它会创建索引并将数据存储 numpy 数组。这是什么意思?...得到数据框,「年龄」列是索引。 除了了解到「X 代」覆盖了三个年龄组外,分解这条链。第一步是对年龄组分组。

1.7K30

Pandas Cookbook》第04章 选取数据子集1. 选取Series数据2. 选取DataFrame行3. 同时选取DataFrame行和列4. 用整数和标签选取数据5. 快速选取标量6

---- 第01章 Pandas基础 第02章 DataFrame运算 第03章 数据分析入门 第04章 选取数据子集 第05章 布尔索引 第06章 索引对齐 第07章 分组聚合、过滤、转换...# 选取连续行和列 In[27]: college.iloc[[100, 200], [7, 15]] Out[27]: ?...# 用loc和列表,选取连续行和列 In[28]: rows = ['GateWay Community College', 'American Baptist Seminary of the West...按照字母切片 # 读取college数据集;尝试选取字母顺序‘Sp’和‘Su’之间学校 In[57]: college = pd.read_csv('data/college.csv', index_col...# 再尝试选取字母顺序‘Sp’和‘Su’之间学校 In[60]: pd.options.display.max_rows = 6 In[61]: college.loc['Sp':'Su'] Out

3.5K10

Pandas Cookbook》第05章 布尔索引1. 计算布尔值统计信息2. 构建多个布尔条件3. 用布尔索引过滤4. 用标签索引代替布尔索引5. 用唯一和有序索引选取6. 观察股价7. 翻译SQ

loop (mean ± std. dev. of 7 runs, 1000 loops each) 更多 # 使用布尔索引和标签选取列 In[26]: states =['TX', 'CA',...用唯一和有序索引选取 # 读取college数据集,使用STABBR作为行索引,检查行索引是否有序 In[27]: college = pd.read_csv('data/college.csv')...INSTNM作为行索引,检测行索引是否唯一 In[33]: college_unique = college.set_index('INSTNM') college_unique.index.is_unique...确定股票收益正态值 # 加载亚马逊股票数据,使用Data作为行索引 In[57]: amzn = pd.read_csv('data/amzn_stock.csv', index_col='Date...# 因为criteria_col是包含行索引一个Series,必须要使用底层ndarray,才能使用,iloc In[98]: movie.iloc[:, criteria_col.values]

2.1K20

Pandas知识点-DataFrame数据结构介绍

DataFrame数据由三个部分组成,行索引、列索引、数据。pandas读取DataFrame数据,如果数据行数和列数很多,会自动将数据折叠,中间显示为“...”。...设置某一列为行索引 上面的DataFrame数据,行索引是0~4725整数,假如要设置日期为行索引,可以使用set_index()方法设置。...如果要将某列数据作为行索引,同时数据也有该列数据,可以set_index()中指定drop参数为False(set_index()drop参数默认为True)。 2....设置多重索引MultiIndex 使用set_index()设置行索引可以同时设置多个列为行索引。...当一列数据唯一,可以使用两列或列来组合成多重行索引,当需要将数据处理成多维数据,也可以用多重索引

2.3K40
领券