当前位置: 首页 > 编程笔记 >

python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)

西门安歌
2023-03-14
本文向大家介绍python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片),包括了python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)的使用技巧和注意事项,需要的朋友参考一下

df是一个dataframe,列名为A B C D

具体值如下:

A B C D
0 ss 小红 8
1 aa 小明 d
4 f f
6 ak 小紫 7

dataframe里的属性是不定的,空值默认为NA。

一、选取标签为A和C的列,并且选完类型还是dataframe

df = df.loc[:, ['A', 'C']]
df = df.iloc[:, [0, 2]]

二、选取标签为C并且只取前两行,选完类型还是dataframe

df = df.loc[0:2, ['A', 'C']] 
df = df.iloc[0:2, [0, 2]] 

聪明的朋友已经看出iloc和loc的不同了:loc是根据dataframe的具体标签选取列,而iloc是根据标签所在的位置,从0开始计数。

","前面的":"表示选取整列,第二个示例中的的0:2表示选取第0行到第二行,这里的0:2相当于[0,2)前闭后开,2是不在范围之内的。

需要注意的是,如果是df = df.loc[0:2, ['A', 'C']]或者df = df.loc[0:2, ['A', 'C']],切片之后类型依旧是dataframe,不能直接进行

加减乘除等操作的,比如dataframe的一列是数学成绩(shuxue),另一列为语文成绩(yuwen),现在需要求两门课程的总和。可以使用df['shuxue'] + df['yuwen'](选取完之后类型为series)来获得总分,而不能使用df.iloc[:,[2]]+df.iloc[:,[1]]或df.iloc[:,['shuxue']]+df.iloc[:,['yuwen']],这会产生错误结果。

还有一种方式是使用df.icol(i)来选取列,选取完的也不是dataframe而是series,i为该列所在的位置,从0开始计数。

如果你想要选取某一行的数据,可以使用df.loc[[i]]或者df.iloc[[i]]。

以上这篇python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍详解Python字符串切片,包括了详解Python字符串切片的使用技巧和注意事项,需要的朋友参考一下 在python中,我们定义好一个字符串,如下所示。 在python中定义个字符串然后把它赋值给一个变量。 我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始(==,我自己都觉得写的好脑残了) 这个时候呢,我们可以通过切片的方式来截取出我们定义的字符串的一部分。 使用切片的

  • 问题内容: 给出清单 您可以使用诸如 但是,我想基于代码中其他位置设置的变量来执行此操作。我可以很容易地做到这一点 但是,我该如何为另一个做呢?我尝试用列表建立索引: 但这是行不通的。我也尝试过使用字符串: 但这也不起作用。 这可能吗? 问题答案: 那是为了: 与使用相同。

  • 给定任何熊猫数据帧。我想选择列A, B和F: Z 我已经尝试过了但是没有成功。请告诉我怎么做。

  • rank ▲ ✰ vote url 29 569 323 918 url 理解Python切片 对于Python的切片有什么好的资料吗?对我来说理解切片有点难度.它看起来非常有用,但是我还是不能理解它,我正在找有什么好的资料. 非常简单: a[start:end] # 从start开始到end-1结束 a[start:] # 从start开始直到末尾 a[:end] # 从头部开始

  • 问题内容: 假设我有一些Python列表,其中包含N个元素。单个元素可以通过使用进行索引,其中是所需元素的索引。然而,Python列表也可以是索引,其中一个从列表中的“片” ,以期望。切片大小为N的列表的Big-O(最坏情况)表示法是什么? 就个人而言,如果我要对“切片器”进行编码,我会从迭代到,生成一个新列表并返回它,表示O(N),这是Python的方式吗? 谢谢, 问题答案: 获取切片为O()

  • 问题内容: 我想要一种算法来遍历列表切片。切片大小在功能之外设置,可以不同。 在我看来,这就像: 有没有一种使用python 2.5正确定义的方法或其他方法? edit1:澄清 “分区”和“滑动窗口”这两个术语听起来都适用于我的任务,但是我不是专家。因此,我将更深入地解释该问题并添加到问题中: FatherList是我从文件中获取的一个多级numpy.array。函数必须找到序列的平均值(用户提供