温馨提示:本文翻译自stackoverflow.com,查看原文请点击:python - How to drop a specific column of csv file while reading it using pandas?
csv dataframe pandas python

python - 使用 pandas 阅读时,如何删除csv文件的特定列?

发布于 2020-03-27 15:45:24

使用加载csv时,我需要删除带有标签名称我正在阅读csv,如下所示,并希望在其中添加参数。谢谢。pandas

pd.read_csv("sample.csv")

我知道这是在阅读csv之后要做的:

df.drop('name', axis=1)

查看更多

查看更多

提问者
Anon George
被浏览
83
Sociopath 2019-02-07 17:29

如果您事先知道列名,则可以通过设置usecols参数来实现

当您知道要使用哪些列时

假设您有带有列的csv文件,['id','name','last_name']而您只想要['name','last_name']您可以按照以下步骤进行操作:

import pandas as pd
df = pd.read_csv("sample.csv", usecols = ['name','last_name'])

当您想要前N列时

如果您不知道列名,但想要从数据框中获取前N列。你可以做到

import pandas as pd
df = pd.read_csv("sample.csv", usecols = [i for i in range(n)])

编辑

当您知道要删除的列的名称时

# Read column names from file
cols = list(pd.read_csv("sample_data.csv", nrows =1))
print(cols)

# Use list comprehension to remove the unwanted column in **usecol**
df= pd.read_csv("sample_data.csv", usecols =[i for i in cols if i != 'name'])