在Pandas中,删除行主要有两种方法:
(图片来源网络,侵删)1、使用drop()
函数,通过索引值删除行。
2、使用布尔索引,通过条件筛选出需要保留的行。
以下是详细的步骤和代码示例:
方法一:使用drop()
函数
drop()
函数的基本语法是:
DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')
labels
是要删除的标签,axis
是轴向,0表示行,1表示列,index
是要删除的行索引,columns
是要删除的列索引,level
是多层索引的级别,inplace
是否在原数据上进行修改,errors
错误处理方式。
我们有一个DataFrame,我们想要删除索引为1的行:
import pandas as pd 创建一个DataFrame df = pd.DataFrame({ 'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']}, index=[0, 1, 2, 3]) print("原始DataFrame:") print(df) 删除索引为1的行 df.drop(1, inplace=True) print("n删除索引为1后的DataFrame:") print(df)
方法二:使用布尔索引
布尔索引是一种非常强大的工具,可以用来选择满足特定条件的行,我们想要删除所有’A’列值为’A1’的行:
import pandas as pd 创建一个DataFrame df = pd.DataFrame({ 'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']}) print("原始DataFrame:") print(df) 使用布尔索引删除所有'A'列值为'A1'的行 df = df[df['A'] != 'A1'] print("n删除所有'A'列值为'A1'后的DataFrame:") print(df)
以上就是在Pandas中删除行的方法。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。