pandas - 如何使用 Pandas 删除特定列?
问题描述
我正在尝试使用 CSV 数据集,特别是来自 AirQualityUCI 的数据集。我正在使用 Pandas,需要删除某些列。
df = pd.read_csv("D:/air/AirQualityUCI.csv")
print(df.columns)
产量
Index(['Date;Time;CO(GT);PT08.S1(CO);NMHC(GT);C6H6(GT);PT08.S2(NMHC);NOx(GT);PT08.S3(NOx);NO2(GT);PT08.S4(NO2);PT08.S5(O3);T;RH;AH;;'], dtype='object')
只是为了说明删除单个列,第四列给出错误 KeyError: "['PT08.S1(CO)'] not found in axis" 以及其他和多个键,也使用整数。有什么建议么?
解决方案
自从
print(df.columns)
产量
Index(['Date;Time;...;RH;AH;;'], dtype='object')
我们知道数据被解释为panda.Index
对象而不是列表。
panda.Index对象是“用于索引和对齐的不可变序列。存储所有 pandas 对象的轴标签的基本对象。”
因此,为了执行任何列表操作,您需要通过调用.toList()
函数将 Index 对象转换为列表。
df = pd.read_csv("D:/air/AirQualityUCI.csv").toList() # convert to a list
df = df.drop('PT08.S1(CO)') # drop the column 'PT08.S1(C0)'
推荐阅读
- bash - 使用 BASH 解析时无法创建数组
- optimization - Dymos 单张/多张拍摄和全局优化器(扩展可能性)
- python - 如何使用 DDNS 和 Python 向路由器后面的设备执行 http post 请求
- microsoft-graph-api - Microsoft Graph API 角色声明不在令牌中,但添加了应用程序权限
- python - 如何使用 python 和美丽的汤来抓取所有事件的位置
- python - 读/写 Parquet 文件而不读入内存(使用 Python)
- amazon-web-services - SageMaker 中的 AWS Glue AccessDeniedException
- google-apps-script - 如何在 Google 电子表格中使用 onEdit(e) 函数获取日期和时间
- c++ - 纯虚函数中父类的默认值
- python - 如何在 Python 的 Google 工作表中将字符串列表写入单独的行