Pandas在csv读取后删除第一列

2024-04-26 05:51:52 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有方法在实例化的行中引用一个对象?在

请参见以下示例: 我想在读完csv文件后删除它的第一列(按索引)(通常是pd.to\U csv将索引输出为第一列):

df = pd.read_csv(csvfile).drop(self.columns[[0]], axis=1)

我明白self应该放在对象上下文中,但是这里描述了我的意图。在

(当然,在两个单独的行中执行此操作非常有效。)


Tags: columns文件csvtocsvfile对象实例方法
2条回答

一种方法是使用pd.DataFrame.iloc

import pandas as pd
from io import StringIO

mystr = StringIO("""col1,col2,col3
a,b,c
d,e,f
g,h,i
""")

df = pd.read_csv(mystr).iloc[:, 1:]

#   col2 col3
# 0    b    c
# 1    e    f
# 2    h    i

假设您知道数据集中的列总数以及要删除的索引-

a = range(3)
a.remove(1)
df = pd.read_csv('test.csv', usecols = a)

这里3是列的总数,我想删除第2列。您可以直接编写要使用的列的索引

相关问题 更多 >