pandas 中三种删除方法

在pandas中,del、drop和pop方法都可以用来删除数据,insert可以在指定位置插入数据。
可以看看以下示例。

import pandas as pd 
from pandas import DataFrame, Series
data = DataFrame({'name':['yang', 'jian', 'yj'], 'age':[23, 34, 22], 'gender':['male', 'male', 'female']})
#data数据
'''
In[182]: data
Out[182]: 
   age  gender  name
0   23    male  yang
1   34    male  jian
2   22  female    yj
'''
#删除gender列,不改变原来的data数据,返回删除后的新表data_2。axis为1表示删除列,0表示删除行。inplace为True表示直接对原表修改。
data_2 = data.drop('gender', axis=1, inplace=False)
'''
In[184]: data_2
Out[184]: 
   age  name
0   23  yang
1   34  jian
2   22    yj
'''
#改变某一列的位置。如:先删除gender列,然后在原表data中第0列插入被删掉的列。
data.insert(0, '性别', data.pop('gender'))#pop返回删除的列,插入到第0列,并取新名为'性别'
'''
In[185]: data
Out[186]: 
       性别  age  name
0    male   23  yang
1    male   34  jian
2  female   22    yj
'''
#直接在原数据上删除列
del data['性别']
'''
In[188]: data
Out[188]: 
   age  name
0   23  yang
1   34  jian
2   22    yj
'''

 

pandas,可以使用不同的方法删除DataFrame的行或列。以下是几种常见的删除方法: 1. 删除具体列: - 删除单列:使用`df.drop("列名", axis=1)`。 - 删除多列:使用`df.drop(\["列名1", "列名2"\], axis=1)`。 - 删除指定位置列:使用`df.drop(columns=\[1, 3\], inplace=True)`或`df.drop(df.columns\[\[0, 1\]\], axis=1)`。 2. 删除具体行: - 删除单行:使用`df.drop("行索引")`。 - 删除多行:使用`df.drop(\["行索引1", "行索引2"\])`。 - 删除指定位置行:使用`df.drop(df.index\[\[1, 3\]\])`。 3. 删除包含某些数值的行或列: - 删除A列小于100的数值:使用`df\[df\['A'\] >= 100\]`。 4. 删除包含某些字符、文字的行或列: - 方法1:使用取反符号:`df\[~df\['列名'\].str.contains('字符或文字')\]`。 - 方法2:使用`drop`方法:`df.drop(df\[(df\["列名"\].str.contains("字符") | df\["列名"\].str.contains("字符"))\].index)`或`df\[~df\["列名"\].isin(\["字符1", "字符2"\])\]`。 5. 删除缺失行或列: - 删除包含缺失值的行:使用`df.dropna()`。 - 删除全部为缺失值的行:使用`df.dropna(how='all')`。 - 删除至少有2个缺失值的行:使用`df.dropna(thresh=2)`。 - 根据指定的列删除包含缺失的行:使用`df.dropna(subset=\['列名'\])`。 以上是一些常见的pandas删除方法,根据具体需求选择适合的方法删除DataFrame的行或列。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [Pandas删除数据的几种方法](https://blog.csdn.net/weixin_43890704/article/details/126118749)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Pandas 删除数据](https://blog.csdn.net/weixin_44639720/article/details/130180495)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值