选择除了Pandas数据框架中的一个给定列之外的所有列

选择除了Pandas数据框架中的一个给定列之外的所有列

数据框架数据结构是Pandas库的核心。数据框架基本上是二维系列对象。它们有行和列,行代表索引,列代表内容。现在,让我们看看如何在Pandas Dataframe中选择所有列,除了一个给定的列。

首先,让我们创建一个数据框架。

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    'course_name': ['Data Structures', 'Python',
                    'Machine Learning'],
    'student_name': ['A', 'B', 
                     'C'],
    'student_city': ['Chennai', 'Pune', 
                     'Delhi'],
    'student_gender': ['M', 'F',
                       'M'] })
# show the Dataframe
data

输出:

选择所有的列,除了Pandas数据框架中的一个给定列之外

方法1:使用Dataframe.loc[ ].

这个GeeksForGeeks数据框架只是一个带有数字索引的二维数组。因此,要想只排除一列,我们可以使用columns方法来获取所有的列,并使用not操作符来排除不需要的列。这种方法只有在Dataframe没有多索引(没有一个以上的索引)时才有效。

例子:选择所有的列,除了Pandas Dataframe中的一个’student_gender’列。

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    'course_name': ['Data Structures', 'Python',
                    'Machine Learning'],
    'student_name': ['A', 'B', 
                     'C'],
    'student_city': ['Chennai', 'Pune', 
                     'Delhi'],
    'student_gender': ['M', 'F',
                       'M'] })
                         
df = data.loc[ : , data.columns != 'student_gender']
  
# show the dataframe
df

输出:

选择所有的列,除了Pandas数据框架中的一个给定列之外

方法2:使用drop()方法。

Dataframe支持drop()方法来删除一个特定的列。它接受两个参数,列/行名称和axis

例子:选择所有的列,除了Pandas数据框架中的一个’student_city’列。

# import pandas library
  
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
   'course_name': ['Data Structures', 'Python',
                   'Machine Learning'],
  
   'student_name': ['A', 'B',
                    'C'],
  
   'student_city': ['Chennai', 'Pune',
                    'Delhi'],
  
   'student_gender': ['M', 'F',
                      'M'] })
  
# drop method
df = data.drop('student_city',
               axis = 1)
   
# show the dataframe
df

输出:

选择所有的列,除了Pandas数据框架中的一个给定列之外

移除student_city列

方法3:使用Series.difference()方法和[ ]操作者一起。

Series.difference() 方法返回一个新的Index,其中包括不在其他索引中的元素。

例子:选择所有列,除了Pandas数据框架中的一个’student_name’列。

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    'course_name': ['Data Structures', 'Python',
                    'Machine Learning'],
    'student_name': ['A', 'B', 
                     'C'],
    'student_city': ['Chennai', 'Pune', 
                     'Delhi'],
    'student_gender': ['M', 'F',
                       'M'] })
                         
df = data[data.columns.difference(['student_name'])]
  
# show the dataframe
df

输出:

选择所有的列,除了Pandas数据框架中的一个给定列之外

被过滤的学生姓名栏

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程