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

Pandas中的对象

Pandas对象简介 如果从底层视角观察Pandas,可以把它们看成增强版的Numpy结构化数组,行列都不再是简单的整数索引,还可以带上标签。...DataFrame是特殊的字典 与Series 类似,我们也可以把DataFrame 看成一种特殊的字典。字典是一个键映射一个值,而DataFrame 是一列映射一个Series 的数据。...0 0 1 1 2 2 2 4 即使字典中有些键不存在,Pandas 也会用缺失值NaN(不是数字,not a number)来表示: pd.DataFrame([{'a': 1, 'b': 2},...如果不指定行列索引值,那么行列默认都是整数索引值:(本质是给一个多维Series对象,给定行索引index,给定列索引columus,默认为None) pd.DataFrame(np.random.rand...: Index does not support mutable operations Index 对象的不可变特征使得多个DataFrame 和数组之间进行索引共享时更加安全,尤其是可以避免因修改索引时粗心大意而导致的副作用

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

    数据分析索引总结(上)Pandas单级索引

    ① 单行索引 df.loc[1103] 虽然这里的1103是整数, 但loc索引方式用的是索引标签, 而不是默认整数索引(注意默认整数索引和标签索引这二者有时候是一样的) ② 多行索引 多行索引时,需传入一个...list,而不是多个索引 df.loc[[1102,2304]] 多行索引时, 传入的必须是一个list, 而不是两个或多个索引, 否则会报错 #以下索引报错 # TypeError: cannot do...df.iloc[lambda x:np.arange(3)] 小节:由上所述,iloc中接收的参数只能为整数或整数列表,不能使用布尔索引。...df1.loc[:,0] 但是传入的是切片的时候,会默认使用的是默认整数索引, 因此尾端是不包含的。...索引多列时,传入的必须是一个list,而不是多个列名标签--方括号应该有两层。

    5.1K40

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

    通常使用标量进行索引会降低维度。使用标量切片DataFrame将返回一个Series。使用标量切片Series将返回一个标量。但是对于重复项,情况并非如此。...通常使用标量进行索引将减少维度。使用标量对DataFrame进行切片将返回一个Series。使用标量对Series进行切片将返回一个标量。但是对于重复项,情况并非如此。...分类数据的所有值都在categories或np.nan中。顺序由categories的顺序而不是值的词法顺序定义。...所有其他比较,特别是两个具有不同类别或一个具有任何类列表对象的分类的“非相等”比较,都会引发TypeError。...numpy数组 目前,分类数据和底层的Categorical是作为 Python 对象实现的,而不是作为低级别的 NumPy 数组 dtype。

    46810

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

    允许的输入包括: 单个标签,例如 5 或 'a'(请注意,5 被解释为索引的 标签。这种用法不是索引上的整数位置。)。 一个标签列表或数组 ['a', 'b', 'c']。...警告 当您提供与索引类型不兼容(或可转换)的切片器时,.loc是严格的。例如,在DatetimeIndex中使用整数。这将引发TypeError。...每个要求的标签必须在索引中,否则将引发KeyError。在切片时,如果存在于索引中,则起始边界和停止边界都包括。整数是有效的标签,但它们指的是标签而不是位置。 .loc属性是主要的访问方法。...以下是有效的输入: 一个单个标签,例如5或'a'(请注意,5被解释为索引的标签。这种用法不是索引上的整数位置。)。 一个标签列表或数组['a', 'b', 'c']。...pandas 提供了一套方法,以便获得纯整数索引。语义紧随 Python 和 NumPy 的切片。这些是0-based索引。在切片时,起始边界是包含的,而上限是排除的。

    40710

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

    pandas 有 SettingWithCopyWarning,因为在切片的副本上赋值通常不是有意的,而是由于链式索引返回了一个副本而预期的是一个切片引起的错误。...允许的输入是: 单个标签,例如 5 或 'a'(请注意 5 被解释为索引的 标签。这种用法 不是 沿索引的整数位置。)。 标签列表或数组 ['a', 'b', 'c']。...每个请求的标签必须在索引中,否则将引发KeyError。在切片时,如果存在于索引中,则起始边界和停止边界都将包括。整数是有效标签,但它们指的是标签而不是位置。 .loc属性是主要访问方法。...以下是有效输入: 单个标签,例如5或'a'(请注意,5被解释为索引的标签。此用法不是索引上的整数位置)。 标签列表或数组['a', 'b', 'c']。...pandas 提供了一套方法,以便获得纯整数索引。语义紧随 Python 和 NumPy 的切片。这些是基于 0 的索引。在切片时,起始边界是包含的,而上限是不包含的。

    25210

    Pandas 实践手册(一)

    我们可以简单地将 Pandas 对象理解为 Numpy 数组的增强版本,其中行与列可以通过标签进行识别,而不仅是简单的数字索引。Pandas 为这些基本数据结构提供了一系列有用的工具与方法。...Series 对象是一个可索引数据的「一维数组」,我们可以基于列表或数组来创建该对象: In[2]: data = pd.Series([0.25, 0.5, 0.75, 1.0]) data...: 「基于嵌套列表(或元组)构建」(可以混用): In[extra1]: pd.DataFrame([[1,2],[2,3],[3,4]], columns=['A', 'B']) Out[extra2...(zip(a_list, b_list)) 创建嵌套列表,再基于上述方式创建 DataFrame 即可(行索引为默认整数索引)。...Index 对象与 Numpy 数组的区别在于其是不可变的(类似列表与元组的区别),我们不能对索引进行修改: In[34]: ind[1] = 0 TypeError: Index does not support

    2K10

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

    ---- 第01章 Pandas基础 第02章 DataFrame运算 第03章 数据分析入门 第04章 选取数据子集 第05章 布尔索引 第06章 索引对齐 第07章 分组聚合、过滤、转换...In[3]: city.iloc[3] Out[3]: 'Huntsville' # iloc通过整数列表选取多行,返回结果是Series In[4]: city.iloc[[10,20,30]]...用整数和标签选取数据 # 读取college数据集,行索引命名为INSTNM In[33]: college = pd.read_csv('data/college.csv', index_col='...INSTNM') # 用索引方法get_loc,找到指定列的整数位置 In[34]: col_start = college.columns.get_loc('UGDS_WHITE')...下面是对DataFrame用标签切片 In[53]: start = 'Mesa Community College' stop = 'Spokane Community College

    3.5K10

    Python数据分析-pandas库入门

    Series 中的单个或一组值,代码示例: obj2[['a', 'b', 'c']] obj2['a']=2 obj2[['a', 'b', 'c']] [‘a’,’b’,’c]是索引列表,即使它包含的是字符串而不是整数...DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共用同一个索引)。DataFrame 中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。...其长度必须跟DataFrame的长度相匹配。...另一种常见的数据形式是嵌套字典,如果嵌套字典传给 DataFrame,pandas 就会被解释为:外层字典的键作为列,内层键则作为行索引,代码示例: #DataFrame另一种常见的数据形式是嵌套字典...print(df.iloc[1,0]) # 13, numpy ndarray ''' 4 ''' print(df.iloc[3:5,1:3]) # 不包含末尾5或3,同列表切片 '''

    3.7K20

    Python 数据处理:Pandas库的使用

    DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)。DataFrame中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。...创建DataFrame的办法有很多,最常用的一种是直接传入一个由等长列表或 NumPy 数组组成的字典: import pandas as pd data = {'state': ['Ohio',...字典键或Series索引的并集将会成为DataFrame的列标 由列表或元组组成的列表 类似于“二维ndarray" 另一个DataFrame 该DataFrame的索引将会被沿用,除非显式指定了其他索引...下表对DataFrame进行了总结: 类型 描述 df[val] 从DataFrame选取单列或一组列;在特殊情况下比较便利:布尔型数组(过滤行)、切片(行切片)、或布尔型DataFrame(根据条件设置值...通过标签选取行或列 get_value, set_value 通过行和列标签选取单一值 ---- 2.5 整数索引 处理整数索引的 Pandas 对象常常难住新手,因为它与 Python 内置的列表和元组的索引语法不同

    22.8K10

    Python数据分析笔记——Numpy、Pandas库

    一维数组的索引 多维数组的索引 (2)切片索引 一维数组的切片索引(与Python列表的切片索引一样) 多维数组的切片索引 (3)花式索引 元素索引和切片索引都是仅局限于连续区域的值,而花式索引可以选取特定区域的值...DataFrame既有行索引也有列索引,其中的数据是以一个或多个二维块存放的,而不是列表、字典或别的一维数据结构。...(2)创建DataFrame: 最常用的一种方法是直接传入一个等长列表或numpy数组组成的字典: 结果DataFrame会自动加上索引(添加方法与Series一样),且全部列会被有序排列。...也可以给某一列赋值一个列表或数组,其长度必须跟DataFrame长度相匹配。如果赋值的是一个Series,则对应的索引位置将被赋值,其他位置的值被赋予空值。...9、层次化索引 层次化索引是pandas的一个重要功能,它的作用是使你在一个轴上拥有两个或多个索引级别。相当于Excel中vlookup函数的多条件查找中的多条件。

    6.4K80

    解决pandas.core.frame.DataFrame格式数据与numpy.ndarray格式数据不一致导致无法运算问题

    问题描述在pandas的DataFrame格式数据中,每一列可以是不同的数据类型,如数值型、字符串型、日期型等。而ndarray格式数据需要每个元素都是相同类型的,通常为数值型。...同质性:ndarray中存储的数据类型必须是相同的,通常是数值型数据。高效性:ndarray底层采用连续的内存块存储数据,并且对于数组中的每个元素,采用相同大小的内存空间。...创建ndarray在numpy中,我们可以使用多种方式来创建ndarray对象:通过Python原生列表或元组创建:使用numpy.array()函数可以从一个Python原生列表或元组创建一个ndarray...ndrray的索引和切片ndarray支持基于索引和切片的灵活数据访问和操作。可以使用方括号​​[]​​来访问数组的元素。下面是一些常用的索引和切片操作:整数索引:通过指定索引位置来访问数组的元素。...布尔索引:通过指定一个布尔数组来访问数组中满足某个条件的元素。例如​​a[a > 5]​​可以访问数组​​a​​中大于5的元素。花式索引:通过指定一个索引数组或整数数组来访问数组的元素。

    53320

    超全的pandas数据分析常用函数总结:下篇

    5.1 数据的合并 用merge合并 DataFrame.merge(self,right,how =‘inner’,on = None) right指要合并的对象 on指要加入的列或索引级别名称,必须在两个...数据提取 下面这部分会比较绕: loc函数按标签值进行提取,iloc按位置进行提取pandas.DataFrame.loc() 允许输入的值: 单个标签,例如5或’a’,(请注意,5被解释为索引的标签,...而不是沿索引的整数位置)。...标签列表或数组,例如。[‘a’, ‘b’, ‘c’] 具有标签的切片对象,例如’a’:‘f’,切片的开始和结束都包括在内。...#pandas.DataFrame.loc pandas.DataFrame.iloc() 允许输入的值:整数5、整数列表或数组[4,3,0]、整数的切片对象1:7 更多关于pandas.DataFrame.iloc

    3.9K20

    python数据分析——数据的选择和运算

    正整数用于从数组的开头开始索引元素(索引从0开始),而负整数用于从数组的结尾开始索引元素,其中最后一个元素的索引是-1,第二个到最后一个元素的索引是-2,以此类推。...而在选择行和列的时候可以传入列表,或者使用冒号来进行切片索引。...函数语法为: .iloc[整数、整数列表、整数切片、布尔列表以及函数]。[ ]里面的使用方法同.loc[ ]方法。...关键技术:这里介绍一下.iloc[函数]中的函数使用方法: ①函数 =自定义函数(函数的返回值需要是合法对象(= 整数、整数列表、整数切片、布 列表)) ②匿名函数lambda :使用方法 语法...join_axes-这是索引对象的列表。用于其他(n-1)轴的特定索引,而不是执行内部/外部设置逻辑。 【例】使用Concat连接对象。

    19310

    数据分析利器 pandas 系列教程(一):从 Series 说起

    虽然 pandas 基于 numpy,但是在开始 pandas 系列文章前,我并不打算先介绍 numpy 的具体使用,因为 numpy 着重解决的是多维列表或矩阵的数学运算问题,pandas 设计之初就是为了解决实际问题...Series 是一种类似于 一维 数组的对象,由一组数据(数据类型可以是整数、浮点数、字符串和其他 Python 对象)和与之同长度的索引(或称标签)组成。...data 是必选参数,index 如缺省,其默认是 range(len(data)),如上面的代码没有指定 index,则 index = [0,1,2,3],而不是[1,2,3,4];dtype 如缺省...切片 Series 类似于列表,也提供了切片操作: print(s2[1:3]) ?...Series 到此为止,作为 pandas 两种数据结构之一,它是另一种数据结构 DataFrame 的基础,只不过 Series 是一维的,DataFrame 是二维表格式的,下一篇就谈 DataFrame

    49640

    利用Python进行数据分析笔记

    : by_letter[word[0]].append(word) 有效的键类型 字典的值可以是任意Python对象,而键通常是不可变的标量类型(整数、浮点型、字符串)或元组(元组中的对象必须是不可变的...通过将整数索引和切片混合,可以得到低维度的切片。...] Out[20]: c 3 a -5 d 6 dtype: int64 [‘c’, ‘a’, ‘d’]是索引列表,即使它包含的是字符串而不是整数。...DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)。DataFrame中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。...图片 整数索引 处理整数索引的pandas对象常常难住新手,因为它与Python内置的列表和元组的索引语法不同。

    5.2K10
    领券