Python Pandas Drop Dataframe
Solution 1
If I understand right to delete column (single) you should use:
df = pd.DataFrame.drop('Meter ID', axis=1)
For more than 1 column:
df = pd.DataFrame.drop(['Meter ID', 'abc'], axis=1)
Difference is in [] brackets.
To delete the whole df you can use either (as mentioned already):
del df
or
df = None
Solution 2
After reading your question , what i understand is you wanted to drop column ['Meter ID']
available in your df = pd.read_csv('C:\LoadProfiles\CSV\WillBaySchl 2013_2014 KW.csv')
pandas dataframe .
I am assuming that you have column name ['Meter ID']
like these in your dataframe and also as header in your csv file .
>>> df.dtypes
Meter ID int64
someothercolumn int64
dtype: object
for that you can simply use these code ,
del df['Meter ID']
Now if you wanted to delete overall dataframe you can simply use these code,
df=None
Solution 3
To drop a column from dataframe,
df = df.drop('Meter ID', axis=1)
Drop more than one columns at a time,
df = df.drop(['Meter ID', 'SomethingElse'], axis=1)
For more pandas.DataFrame.drop
Comments
-
bbartling almost 4 years
How do I delete a column from a DataFrame? I know this data is not reproducible as I have a CSV file and I am trying to build a pandas data frame to do some wrangling.
import pandas as pd import numpy as np import matplotlib.pyplot as plt df = pd.read_csv('C:\LoadProfiles\CSV\WillBaySchl 2013_2014 KW.csv') print(df)
This will return the head/tail and:
[34944 rows x 3 columns]
pos0 = 0 pos1 = 1 pos2 = 2 colname = df.columns[pos0] print(colname)
This will return:
Meter ID
(I want to drop this column/dataframe)colname = df.columns[pos1] print(colname)
This will return:
Date / Time
(I want this to be the pd data frame index)colname = df.columns[pos2] print(colname)
This will return:
KW(ch: 1 set:0)
(This is the data that I want to rename "kW" and do some wrangling...)If I try this code below:
df = pd.DataFrame.drop(['Meter ID'], axis=1) print(df)
Python will return the error:
TypeError: drop() missing 1 required positional argument: 'labels'
If I try this code below:
df = pd.DataFrame.drop(columns=['Meter ID']) print(df)
Python will return the error:
TypeError: drop() got an unexpected keyword argument 'columns'
Any help is greatly appreciated...