Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从DataFrame绘图中排除几列?_Python_Pandas - Fatal编程技术网

Python 如何从DataFrame绘图中排除几列?

Python 如何从DataFrame绘图中排除几列?,python,pandas,Python,Pandas,我有一个数据框,大约有25列,其中一些包含不适合打印的数据。DataFrame.hist()在这些数据上抛出错误。如何指定打印时应排除这些列?我们可能会使这更容易(我创建了一个),但现在您可以选择要打印的列: df.ix[:, df.columns - to_exclude].hist() 我通常会这样做: columns = [column for column in df.columns if df[column].dtype == 'float64'] df = df[columns]

我有一个数据框,大约有25列,其中一些包含不适合打印的数据。DataFrame.hist()在这些数据上抛出错误。如何指定打印时应排除这些列?

我们可能会使这更容易(我创建了一个),但现在您可以选择要打印的列:

df.ix[:, df.columns - to_exclude].hist()

我通常会这样做:

columns = [column for column in df.columns if df[column].dtype == 'float64']
df = df[columns]

我想你可以:

df.drop(['bad col1', 'bad col2', 'bad col3', ...], axis=1).hist()
按照官方规定,您可以使用loc

df.loc[:,['A','B']]
例如,您只获得列“A”和“B”。
通过这种方式,您可以选择要绘制的列。

注意,对@Chang She的响应进行了修改,从0.16开始,
-
操作符将被计划弃用。鼓励使用
difference()
方法代替它

exclude = ['bad col1', 'bad col2']
df.loc[:, df.columns.difference(exclude)].hist() 

最新情况:

现已弃用,将在将来的版本中删除。这个 复制此行为的首选方法是

df.sub(df['A'], axis=0)
就这样怎么样

df_new = df[df.columns -[cols_to_exclude]]
df_new.plot()

什么是“to_excl”对象?作为“to_excl”对象,您可以使用列名称的列表来排除。这不是OP想要的排除
df_new = df[df.columns -[cols_to_exclude]]
df_new.plot()