如何在Pandas中排除列
在这篇文章中,我们将讨论如何排除pandas数据框架中的列。
创建DataFrame
这里我们使用Python中的pandas库创建数据框架。
# import pandas module
import pandas as pd
# create food dataframe
data = pd.DataFrame({'food_id': [1, 2, 3, 4],
'name': ['idly', 'dosa', 'poori', 'chapathi'],
'city': ['delhi', 'goa', 'hyd', 'chennai'],
'cost': [12, 34, 21, 23]})
# display
data
输出:
如何排除列
使用dataframe.loc排除一列
我们可以通过使用loc函数从pandas数据框架中排除一列。这个函数根据位置来移除该列。
语法: dataframe.loc[ : , ddataframe.columns!='column_name']
在这里,我们将在python中使用loc()函数来排除带有姓名、城市和费用的列。
# exclude name column
print(data.loc[:, data.columns != 'name'])
# exclude city column
print(data.loc[:, data.columns != 'city'])
# exclude cost column
print(data.loc[:, data.columns != 'cost'])
输出:
如何排除列
使用dataframe.loc排除多个列
这里我们使用loc函数和isin运算符来排除多列的数据。
语法 :
dataframe.loc[:, ~dataframe.columns.isin([‘column1’,………………, ‘column n’])]
示例:
在这个例子中,我们将使用isin操作符,从给定的数据框中排除name和food_id列。
# exclude name and food_id column
print(data.loc[:, ~data.columns.isin(['name', 'food_id'])])
输出:
如何排除列
从数据框架中删除该列
在这里,我们通过获取所有的列并删除所需的列,将列从数据框架中排除,并打印修改后的数据框架。
# printing the original dataframe
print(df)
# getting all the columns
my_cols = set(df.columns)
# removing the desired column
my_cols.remove('city')
my_cols = list(my_cols)
df2 = df[my_cols]
# printing the modified dataframe
print(df2)
输出: