用python中的特定列名筛选dataframe

我有一个熊猫数据框和一个列表,如下所示

mylist=['nnn','mmm','yyy']
我的数据=
xxx yyy zzz nnn ddd mmm
0  0  10      5    5   5  5
1  1   9      2    3   4  4
2  2   8      8    7   9  0

现在,我只想获取mylist中提到的列,并将其保存为csv文件

i、 e

yyy nnn mmm
0    10     5     5
1    9      3     4
2    8      7     0

我目前的代码如下

mydata=pd.read\u csv(输入文件,头文件=0)
对于mylist中的项目:
mydata_new=mydata[项目]
打印(mydata\u新建)
mydata_new.to_csv(文件名)

在我看来,我的新数据框产生了错误的结果。我在哪里弄错了?请帮帮我

只需将列名列表传递给indexdf

df[['nnn','mmm','yyy']]
nnn-mmm-yyy
0    5    5   10
1    3    4    9
2    7    0    8

如果需要处理列表中不存在的列名,请尝试使用df.columns.isin

df.loc[:,df.columns.isin(['nnn','mmm','yyy','zzzzzz'])]
yyy nnn mm
0   10    5    5
1    9    3    4
2    8    7    0

发表评论