相关疑难解决方法(0)

熊猫中的轴是什么意思?

这是我生成数据帧的代码:

import pandas as pd
import numpy as np

dff = pd.DataFrame(np.random.randn(1,2),columns=list('AB'))
Run Code Online (Sandbox Code Playgroud)

然后我得到了数据帧:

+------------+---------+--------+
|            |  A      |  B     |
+------------+---------+---------
|      0     | 0.626386| 1.52325|
+------------+---------+--------+
Run Code Online (Sandbox Code Playgroud)

当我输入命令时:

dff.mean(axis=1)
Run Code Online (Sandbox Code Playgroud)

我有 :

0    1.074821
dtype: float64
Run Code Online (Sandbox Code Playgroud)

根据pandas的引用,axis = 1代表列,我期望命令的结果

A    0.626386
B    1.523255
dtype: float64
Run Code Online (Sandbox Code Playgroud)

所以这是我的问题:熊猫中的轴是什么意思?

python numpy dataframe pandas

243
推荐指数
12
解决办法
19万
查看次数

删除pandas中的多个列

我试图通过以下代码在pandas数据框中删除索引号的多列(我的数据集中的第2列和第70列,分别索引为1和69):

df.drop([df.columns[[1, 69]]], axis=1, inplace=True)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

TypeError: unhashable type: 'Index'
Run Code Online (Sandbox Code Playgroud)

在我的代码中,[1,69]突出显示并说:

Expected type 'Integral', got 'list[int]' instead
Run Code Online (Sandbox Code Playgroud)

下面的代码执行我想要它成功完成的操作,但是在两行重复代码上(首先删除col索引69,然后是1,并且顺序很重要,因为删除先前的列会更改后面列的索引).我以为我可以简单地将多个列索引指定为列表,但也许我上面有错误?

df.drop([df.columns[69]], axis=1, inplace=True)
df.drop([df.columns[1]], axis=1, inplace=True)
Run Code Online (Sandbox Code Playgroud)

有没有办法可以在一行上执行此操作,类似于上面的第一个代码片段?

python pandas

60
推荐指数
2
解决办法
12万
查看次数

如何在一次传递中删除多个列

如何在一次通过中删除多个列?我知道这很有效

del df['A']
del df['B']
Run Code Online (Sandbox Code Playgroud)

del df[['A', 'B']]
Run Code Online (Sandbox Code Playgroud)

没有.

python pandas

5
推荐指数
1
解决办法
6495
查看次数

通过索引删除多个Pandas列

我有一个大熊猫数据框(> 100列)。我需要删除各种列集,我希望有一种使用旧列的方法

df.drop(df.columns['slices'],axis=1)
Run Code Online (Sandbox Code Playgroud)

我建立了一些选择,例如:

a = df.columns[3:23]
b = df.colums[-6:]
Run Code Online (Sandbox Code Playgroud)

作为ab代表我要删除的列集。

下列

list(df)[3:23]+list(df)[-6:]
Run Code Online (Sandbox Code Playgroud)

产生正确的选择,但我不能用实现它drop

df.drop(df.columns[list(df)[3:23]+list(df)[-6:]],axis=1)
Run Code Online (Sandbox Code Playgroud)

ValueError:操作数不能与形状(20,)(6,)一起广播

我环顾四周,但找不到答案。

选择数据帧中的最后n列并排除最后n列

(以下与我收到的错误有关):

python numpy ValueError:操作数不能与形状一起广播

感觉好像他们遇到了类似的问题,但是“切片”并不是分开的: 根据Pandas中的列名删除多个列

干杯

python indexing numpy dataframe pandas

3
推荐指数
3
解决办法
6678
查看次数

如何根据条件删除列

我想删除以“ TYPE”字样开头且不包含_1

df =

TYPE_1    TYPE_2    TYPE_3    COL1
aaa       asb       bbb       123
Run Code Online (Sandbox Code Playgroud)

结果应为:

df =

    TYPE_1    COL1
    aaa       123
Run Code Online (Sandbox Code Playgroud)

目前,我正在手动删除这些列,但是,如果列数很大,此方法将不是很有效:

df = df.drop(["TYPE_2","TYPE_3"], axis=1)
Run Code Online (Sandbox Code Playgroud)

python pandas

1
推荐指数
2
解决办法
3406
查看次数

标签 统计

pandas ×5

python ×5

dataframe ×2

numpy ×2

indexing ×1