Hen*_*Hub 2 python dataframe python-3.x pandas data-science
如何从DataFrame中删除列?我知道这个数据不可重复,因为我有一个CSV文件,我正在尝试构建一个pandas数据框来做一些争论.
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)
Run Code Online (Sandbox Code Playgroud)
这将返回头部/尾部并且:[34944 rows x 3 columns]
pos0 = 0
pos1 = 1
pos2 = 2
colname = df.columns[pos0]
print(colname)
Run Code Online (Sandbox Code Playgroud)
这将返回:( Meter ID我想删除此列/数据帧)
colname = df.columns[pos1]
print(colname)
Run Code Online (Sandbox Code Playgroud)
这将返回:( Date / Time我希望这是pd数据帧索引)
colname = df.columns[pos2]
print(colname)
Run Code Online (Sandbox Code Playgroud)
这将返回:( KW(ch: 1 set:0)这是我要重命名为"kW"的数据并做一些争论...)
如果我尝试以下代码:
df = pd.DataFrame.drop(['Meter ID'], axis=1)
print(df)
Run Code Online (Sandbox Code Playgroud)
Python将返回错误:TypeError: drop() missing 1 required positional argument: 'labels'
如果我尝试以下代码:
df = pd.DataFrame.drop(columns=['Meter ID'])
print(df)
Run Code Online (Sandbox Code Playgroud)
Python将返回错误: TypeError: drop() got an unexpected keyword argument 'columns'
任何帮助是极大的赞赏...
如果我理解删除列(单个)的权利,您应该使用:
df = pd.DataFrame.drop('Meter ID', axis=1)
Run Code Online (Sandbox Code Playgroud)
超过1列:
df = pd.DataFrame.drop(['Meter ID', 'abc'], axis=1)
Run Code Online (Sandbox Code Playgroud)
差异在[]括号中.
要删除整个df,您可以使用(如前所述):
del df
Run Code Online (Sandbox Code Playgroud)
要么
df = None
Run Code Online (Sandbox Code Playgroud)