# Let df be a dataframe
# Let new_df be a dataframe after dropping a column
new_df = df.drop(labels='column_name', axis=1)
# Or if you don't want to change the name of the dataframe
df = df.drop(labels='column_name', axis=1)
# Or to remove several columns
df = df.drop(['list_of_column_names'], axis=1)
# axis=0 for 'rows' and axis=1 for columns
# axis=1 tells Python that we want to apply function on columns instead of rows
# To delete the column permanently from original dataframe df, we can use the option inplace=True
df.drop(['A', 'B', 'C'], axis=1, inplace=True)
# axis=1 tells Python that we want to apply function on columns instead of rows
# To delete the column permanently from original dataframe df, we can use the option inplace=True
df.drop(['column_1', 'Column_2'], axis = 1, inplace = True)
# Import pandas package
import pandas as pd
# create a dictionary with five fields each
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Convert the dictionary into DataFrame
df = pd.DataFrame(data)
#drop the 'A' column from your dataframe df
df.drop(['A'],axis=1,inplace=True)
df
#-->df contains 'B','C','D' and 'E'
#in this example you will change your dataframe , if you don't want to ,
#just remove the in place parameter and assign your result to an other variable
df1=df.drop(['B'],axis=1)
#-->df1 contains 'C','D','E'
df1
# When you have many columns, and only want to keep a few:
# drop columns which are not needed.
# df = pandas.Dataframe()
columnsToKeep = ['column_1', 'column_13', 'column_99']
df_subset = df[columnsToKeep]
# Or:
df = df[columnsToKeep]
In [212]:
df = pd.DataFrame(np.random.randint(0, 2, (10, 4)), columns=list('abcd'))
df.apply(pd.Series.value_counts)
Out[212]:
a b c d
0 4 6 4 3
1 6 4 6 7