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

Pandas根据条件提取行,但保留旧的行索引

Pandas是一个基于Python的数据分析库,提供了丰富的数据结构和数据分析工具。根据条件提取行并保留旧的行索引可以通过以下步骤实现:

  1. 导入Pandas库:
代码语言:txt
复制
import pandas as pd
  1. 创建一个DataFrame对象:
代码语言:txt
复制
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
        'Age': [25, 30, 35, 40],
        'City': ['New York', 'London', 'Paris', 'Tokyo']}
df = pd.DataFrame(data)
  1. 使用条件提取行并保留旧的行索引:
代码语言:txt
复制
condition = df['Age'] > 30
new_df = df[condition].reset_index(drop=False)

上述代码中,我们使用条件df['Age'] > 30来提取年龄大于30的行,并通过reset_index(drop=False)方法保留旧的行索引。

  1. 打印提取后的DataFrame对象:
代码语言:txt
复制
print(new_df)

输出结果:

代码语言:txt
复制
   index     Name  Age    City
0      2  Charlie   35   Paris
1      3    David   40   Tokyo

在这个例子中,我们根据条件提取了年龄大于30的行,并保留了旧的行索引。提取后的DataFrame对象new_df包含了满足条件的行以及它们在原始DataFrame中的旧的行索引。

对于Pandas的更多详细信息和用法,你可以参考腾讯云的相关产品和文档:

请注意,以上提供的腾讯云产品仅作为示例,实际选择云计算产品应根据具体需求和情况进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Pandas代码,即可实现漂亮条件格式”!

本文概述 Pandas 是数据科学家做数据处理时,使用最多工具。...对比Excel,我们可以发现:Pandas基本可以实现所有的Excel功能,并且比Excel更方便、简洁,其实很多操作我们在过去文章中,或多或少都讲述过。...但是在数据框上,完成各种 “条件格式” 设置,帮助我们更加凸显数据,使得数据展示更加美观,今天还是头一次讲述。 ?...上图左表展示是某班级期末考试成绩数据,我们要利用左表完成如右表效果展示,需要完成目标如下: (1)将“均值”这一列数值,保留1位小数; (2)给这份数据,添加一个标题辅助说明“高三(5)班期末考试成绩...”,方便我们区分数据; (3)隐藏索引列(注意最左边!)

1.4K20

Pandas代码,即可实现漂亮条件格式”!

本文概述 Pandas 是数据科学家做数据处理时,使用最多工具。...对比Excel,我们可以发现:Pandas基本可以实现所有的Excel功能,并且比Excel更方便、简洁,其实很多操作我们在过去文章中,或多或少都讲述过。...但是在数据框上,完成各种 “条件格式” 设置,帮助我们更加凸显数据,使得数据展示更加美观,今天还是头一次讲述。 ?...上图左表展示是某班级期末考试成绩数据,我们要利用左表完成如右表效果展示,需要完成目标如下: (1)将“均值”这一列数值,保留1位小数; (2)给这份数据,添加一个标题辅助说明“高三(5)班期末考试成绩...”,方便我们区分数据; (3)隐藏索引列(注意最左边!)

1.2K10

Pandas怎样设置处理后第一索引

一、前言 前几天在Python最强王者交流群【wen】问了一个Pandas自动化办公问题,一起来看看吧。...请教问题 设置了header=None,通过drop_duplicates删除了重复,怎样设置处理后第一索引(原表格列比较多,而且每次表格名字不一定相同) 二、实现过程 这里【鶏啊鶏。...给了一个思路和代码,如下所示: 顺利地解决了粉丝问题。 三、总结 大家好,我是皮皮。...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。 最后感谢粉丝【wen】提问,感谢【鶏啊鶏。】...、【郑煜哲·Xiaopang】给出思路和代码解析,感谢【莫生气】、【Ineverleft】等人参与学习交流。

17030

盘点一个Pandas提取Excel列包含特定关键词(上篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,问题如下:大佬们,请教个小问题,我要查找某列中具体值,譬如df[df['作者'] == 'abc'],实际上这样子我找不到...ABC,因为对方实际是小写abc。...再次反应是加个或进行处理,也可以用如下代码: # 创建布尔Series mask = df['作者'].isin(['ABC', 'abc']) # 使用布尔Series来索引DataFrame result...但是粉丝需求又发生了改变,下一篇文章我们一起来看看这个“善变”粉丝提问。 三、总结 大家好,我是皮皮。...这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。

17510

盘点一个Pandas提取Excel列包含特定关键词(中篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,但是粉丝又改需求了,需求改来改去,就是没个定数。 这里他最新需求,如上图所示。...他意思在这里就是要上图中最下面这3个。 二、实现过程 后来【论草莓如何成为冻干莓】给了一份代码,如下图所示: 顺利地解决了粉丝问题。...可以看到,代码刚给出来,但是粉丝需求又发生了改变,不过不慌,这里又给出了对应代码,如下图所示: 一看就会,一用就废,粉丝自己刚上手,套用到自己数据里边,代码就失灵了。...下一篇文章,我们再来看这位粉丝新遇到问题。 三、总结 大家好,我是皮皮。这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【上海新年人】提出问题,感谢【鶏啊鶏。】、【论草莓如何成为冻干莓】给出思路,感谢【莫生气】等人参与学习交流。

12510

盘点一个Pandas提取Excel列包含特定关键词(下篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,上一篇中已经给出了代码,粉丝自己可能还没有领悟明白,一用就废,遇到了问题。...他代码照片如下图: 这个代码这么写,最后压根儿就没有得到他自己预期结果,遂来求助。这里又回归到了他自己最开始需求澄清!!!论需求表达清晰重要性!...Series来索引DataFrame result = df[mask] 你已经这就顺利地解决了粉丝问题了?...能给你做出来,先实现就不错了,再想着优化事呗。 后来【莫生气】给了一个正则表达式写法,总算是贴合了这个粉丝需求。 如果要结合pandas的话,可以写为下图代码: 至此,粉丝不再修改需求。...这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。 最后感谢粉丝【上海新年人】提出问题,感谢【鶏啊鶏。】

20810

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

data.reset_index(drop=True) # 重置索引列,并且避免将索引添加为列 输出结果: ?...数据提取 下面这部分会比较绕: loc函数按标签值进行提取,iloc按位置进行提取pandas.DataFrame.loc() 允许输入值: 单个标签,例如5或’a’,(请注意,5被解释为索引标签,...6.1 单行索引 data.loc[6] # 提取索引值为6那一(即输出第7) 输出结果: ?...6.2 区域索引 6.2.1 用loc取连续多行 提取索引值为2到索引值为4所有,即提取第3到第5,注意:此时切片开始和结束都包括在内。 data.loc[2:4] 输出结果: ?...6.2.2 用loc取不连续多行 提取索引值为2和索引值为4所有,即提取第3和第5。 data.loc[[2,4]] 输出结果: ?

4.8K20

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

data.reset_index(drop=True) # 重置索引列,并且避免将索引添加为列 输出结果: ?...数据提取 下面这部分会比较绕: loc函数按标签值进行提取,iloc按位置进行提取pandas.DataFrame.loc() 允许输入值: 单个标签,例如5或’a’,(请注意,5被解释为索引标签,...6.1 单行索引 data.loc[6] # 提取索引值为6那一(即输出第7) 输出结果: ?...6.2 区域索引 6.2.1 用loc取连续多行 提取索引值为2到索引值为4所有,即提取第3到第5,注意:此时切片开始和结束都包括在内。 data.loc[2:4] 输出结果: ?...6.2.2 用loc取不连续多行 提取索引值为2和索引值为4所有,即提取第3和第5。 data.loc[[2,4]] 输出结果: ?

3.8K20

通宵翻译Pandas官方文档,写了这份Excel万字肝货操作!

Pandas 中,如果未指定索引,则默认使用 RangeIndex(第一 = 0,第二 = 1,依此类推),类似于电子表格中标题/数字。...在 Pandas 中,索引可以设置为一个(或多个)唯一值,这就像在工作表中有一列用作标识符一样。与大多数电子表格不同,这些索引值实际上可用于引用。...If/then逻辑 假设我们想要根据 total_bill 是小于还是大于 10 美元,来创建一个具有低值和高值列。 在Excel电子表格中,可以使用条件公式进行逻辑比较。...获取第一个字符: =MID(A2,1,1) 使用 Pandas,您可以使用 [] 表示法按位置位置从字符串中提取子字符串。请记住,Python 索引是从零开始。...在 Pandas提取单词最简单方法是用空格分割字符串,然后按索引引用单词。请注意,如果您需要,还有更强大方法。

19.5K20

Python~Pandas 小白避坑之常用笔记

usecols=None)全部读取 skiprows:根据数字索引跳过行数据,默认从第0开始 import pandas as pd sheet1 = pd.read_excel(io='非洲通讯产品销售数据...对象进行异常值剔除、修改 需求:“Age”列存在数值为-1、0 和“-”异常值,删除存在该情况行数据;“Age”列存在空格和“岁”等异常字符,删除这些异常字符但须保留年龄数值 import pandas...四、数据提取、loc、iloc使用 1.根据列名提取数据 import pandas as pd sheet1 = pd.read_excel(io='非洲通讯产品销售数据.xlsx', sheet_name..., usecols=None) sheet1 = sheet1.loc[0:4, ['日期', '国家']] # 提取前5, 日期、国家列 3.iloc数据提取 import pandas as...SalesData', skiprows=0, usecols=None) print(sheet1.head(5)) # 根据条件 指定"利润"字段赋值, 条件符号:或(|),与(&) sheet1.

3.1K30

Pandas三百题

df.drop_duplicates() 21-删除重复值|指定 删除全部重复值,保留最后一次出现值 df.drop_duplicates(keep='last') 4-数据统计描述性分析 数据探索...提取0-50,间隔为3 df.loc[0:50:3] 30-筛选|判断(大于) 提取金牌数大于30 df[df['金牌数']>30] 31-筛选|判断(等于) 提取金牌数等于10 df[...=10] 33-筛选|条件(指定行号) 提取全部奇数 df[[i%2==1 for i in range(len(df.index))]] 34-筛选|条件(指定值) 提取中国、美国、英国、巴西、...'].isin(['中国','美国','英国','日本','巴西']))&(df['金牌数']<30) 36 -筛选条件(包含指定值) 提取 国家奥委会 列中,所有包含国 df[df['国家奥委会...] 39-筛选值|组合(行号+列号) 提取第 4 ,第 4 列值 df.iloc[3,3] 40 - 筛选值|组合(行号+列名) 提取索引为 4 ,列名为 金牌数 值 df.at[4,'金牌数'

4.6K22

Python数据分析实战基础 | 灵活Pandas索引

第一篇潘大师(初识Pandas)教程考虑到篇幅问题只讲了最基础列向索引这显然不能满足同志们日益增长个性化服务(选取)需求。...01 基于位置(数字)索引 先看一下索引操作方式: ? 我们需要根据实际情况,填入对应参数和列参数。 场景一(选取) 目标:选择“流量来源”等于“一级”所有。...思路:手指戳屏幕数一数,一级渠道,是从第1到第13,对应索引是0-12,Python切片默认是含首不含尾,要想选取0-12索引,我们得输入“0:13”,列想要全部选取,则输入冒号“:”即可...场景三:我们想要提取二级、三级流量来源、来源明细对应访客和支付转化率。 思路:提取用判断,列提取输入具体名称参数。 ?...要三个条件同时满足,他们之间是一个“且”关系(同时满足),在pandas中,要表示同时满足,各条件之间要用"&"符号连接,条件内部最好用括号区分;如果是“或”关系(满足一个即可),则用“|”符号连接

1.1K20

如何在 Python 数据中灵活运用 Pandas 索引

第一篇潘大师(初识Pandas)教程考虑到篇幅问题只讲了最基础列向索引这显然不能满足同志们日益增长个性化服务(选取)需求。...基于位置(数字)索引  先看一下索引操作方式:  我们需要根据实际情况,填入对应参数和列参数。  场景一(选取)  目标:选择“流量来源”等于“一级”所有。 ...思路:手指戳屏幕数一数,一级渠道,是从第1到第13,对应索引是0-12,Python切片默认是含首不含尾,要想选取0-12索引,我们得输入“0:13”,列想要全部选取,则输入冒号“:”即可...思路:提取用判断,列提取输入具体名称参数。  此处插播一条isin函数广告,这个函数能够帮助我们快速判断源数据中某一列(Series)值是否等于列表中值。...先看看均值各是多少:  再判断各指标列是否大于均值:  要三个条件同时满足,他们之间是一个“且”关系(同时满足),在pandas中,要表示同时满足,各条件之间要用"&"符号连接,条件内部最好用括号区分

1.7K00

Pandas 25 式

~ 按 用多个文件建立 DataFrame ~ 按列 从剪贴板创建 DataFrame 把 DataFrame 分割为两个随机子集 根据多个类别筛选 DataFrame 根据最大类别筛选 DataFrame...如果想让索引从 0 到 1,用 reset_index()方法,并用 drop 关键字去掉原有索引。 ? 这样,序就已经反转过来了,索引也重置为默认索引。 5....为避免这种情况,要在 concat() 函数里用忽略索引、重置新索引参数,ignore_index = True。 ? 10....如果想分割字符串,只想保留分割结果一列,该怎么操作? ? 要是只想保留城市列,可以选择只把城市加到 DataFrame 里。 ? 17....要解决这个问题得用 transform() 方法,这个方法执行同样计算,返回与原始数据行数一样输出结果,本例中为 4622 。 ?

8.4K00

2020年入门数据分析选择Python还是SQL?七个常用操作对比!

二、查找 单条件查找 在SQL中,WHERE子句用于提取那些满足指定条件记录,语法如下 SELECT column_name,column_name FROM table_name WHERE column_name...而在pandas中,按照条件进行查找则可以有多种形式,比如可以将含有True/FalseSeries对象传递给DataFrame,并返回所有带有True ?...中,我们选择应保留,而不是删除它们 tips = tips.loc[tips['tip'] <= 9] 五、分组 在pandas中,使用groupby()方法实现分组。...key': ['B', 'D', 'D', 'E'], ....: 'value': np.random.randn(4)}) 内连接 内联接使用比较运算符根据每个表共有的列值匹配两个表中...全连接 全连接返回左表和右表中所有,无论是否匹配,并不是所有的数据库都支持,比如mysql就不支持,在SQL中实现全连接可以使用FULL OUTER JOIN SELECT * FROM df1

3.5K31

30 个小例子帮你快速掌握Pandas

这些方法根据索引或标签选择和列。 loc:带标签选择 iloc:用索引选择 先创建20个随机indices。...尽管我们对loc和iloc使用了不同列表示形式,值没有改变。原因是我们使用数字索引标签。因此,标签和索引都相同。 缺失值数量已更改: ? 7.填充缺失值 fillna函数用于填充缺失值。...df.isna().sum().sum() --- 0 9.根据条件选择 在某些情况下,我们需要适合某些条件观察值(即行)。例如,下面的代码将选择居住在法国并且已经流失客户。...重设索引原始索引保留为新列。我们可以在重置索引时将其删除。...第一个参数是位置索引,第二个参数是列名称,第三个参数是值。 19.where函数 它用于根据条件替换行或列中值。默认替换值是NaN,但我们也可以指定要替换值。

10.6K10

Pandas图鉴(三):DataFrames

所有的算术运算都是根据和列标签来排列: 在DataFrames和Series混合操作中,Series行为(和广播)就像一个-向量,并相应地被对齐: 可能是为了与列表和一维NumPy向量保持一致...垂直stacking 这可能是将两个或多个DataFrame合并为一个最简单方法:你从第一个DataFrame中提取,并将第二个DataFrame中附加到底部。...,连接要求 "right" 列是有索引; 合并丢弃左边DataFrame索引,连接保留它; 默认情况下,merge执行是内连接,join执行是左外连接; 合并不保留顺序,连接保留它们(有一些限制...就像原来join一样,on列与第一个DataFrame有关,而其他DataFrame是根据它们索引来连接。 插入和删除 由于DataFrame是一个列集合,对操作比对列操作更容易。...你可以手动否定这个条件,或者使用pdi库中(一)自动化: Group by 这个操作已经在 Series 部分做了详细描述:Pandas图鉴(二):Series 和 Index。

33620

Pandas_Study01

pandas 入门概念 series 和 dataframe 这是pandas 中最为基本两个概念,series 类似于一维数组,可以近似当成普通数组进行操作,对于series 默认会有索引为它索引...,特殊同时与普通一维数组不同 列表只能有从0开始整数索引,而series则可以自定义标签索引,这一点来看,跟字典又比较相似,因此series又可以拥有类似字典操作方式,series 标签索引可以随时更新修改替换...iloc 用法(Dataframe) iloc([这里是标识], [这里是列标识]) 语法与loc 看上去比较类似,功能更为单一 示例: data.iloc[:,1:4] # 返回全部索引为1到...根据需要进行取值,即自定义条件 money_series[money_series > 50] # 选取大于50值 """ c 300 d 200 Name: money, dtype:...set_value 方法添加数据,比较append 方法set_value更便捷 s.set_value("this", 8) # 删除数据 # 一般删除使用不多,更多是数据进行布尔筛选或mask ,提取出符合条件和所需数据即可

16410

python pandas read_excel 参数详解 to_excel 读写Excel

Python 读写 Excel 可以使用 Pandas,处理很方便。如果要处理 Excel 格式,还是需要 openpyxl 模块, xlrd 和 xlwt 模块可能支持不够丰富。...Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 参数,以便日后使用。...(1, 3) # 使用 [1, 3) ,不包括第 3 usecols = [4, 7] # 使用 4和7 skiprows:指定跳过行数(不读取行数) shiprows = 4...,可以留下首行列名 skipfooter:指定省略尾部行数,必须为整数 skipfooter = 4 # 跳过尾部 4 index_col:指定列为索引列,索引从 0 开始 index_col...,默认保存为字符串 float_format=’%.2f’ # 保存为浮点数,保留2位小数 engine=None:保存格式,指定io.excel.xlsx.writer、 io.excel.xls.writer

7.9K20

python数据科学系列:pandas入门详细教程

,仅支持一维和二维数据,数据内部可以是异构数据,仅要求同列数据类型一致即可 numpy数据结构仅支持数字索引,而pandas数据结构则同时支持数字索引和标签索引 从功能定位上看: numpy虽然也支持字符串等其他数据类型...isin/notin,条件范围查询,即根据特定列值是否存在于指定列表返回相应结果 where,仍然是执行条件查询,但会返回全部结果,只是将不满足匹配条件结果赋值为NaN或其他指定值,可用于筛选或屏蔽值...检测各行是否重复,返回一个索引bool结果,可通过keep参数设置保留第一/最后一/无保留,例如keep=first意味着在存在重复多行时,首被认为是合法而可以保留 删除重复值,drop_duplicates...,可通过axis参数设置是按删除还是按列删除 替换,replace,非常强大功能,对series或dataframe中每个元素执行按条件替换操作,还可开启正则表达式功能 2 数值计算 由于pandas...;sort_values是按值排序,如果是dataframe对象,也可通过axis参数设置排序方向是还是列,同时根据by参数传入指定或者列,可传入多行或多列并分别设置升序降序参数,非常灵活。

13.8K20
领券