Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.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 根据索引从pandas数组中删除值_Python_Pandas - Fatal编程技术网

Python 根据索引从pandas数组中删除值

Python 根据索引从pandas数组中删除值,python,pandas,Python,Pandas,可能以前有人问过,但找不到适合我的答案 我有一个相当大的数组,由3个唯一的类名组成。我正在尝试根据索引值创建3个新数组。使用Fisher's Iris数据集(因为它较小且易于测试),我尝试使用以下代码: iris_ds.set_index("Class") iris_SA = iris_ds.drop("Iris-versicolor", axis=0) iris_SA = iris_SA.drop("Iris-virginica", axis=0) 但是,当我运行它时,会出现以下错误: 回

可能以前有人问过,但找不到适合我的答案

我有一个相当大的数组,由3个唯一的类名组成。我正在尝试根据索引值创建3个新数组。使用Fisher's Iris数据集(因为它较小且易于测试),我尝试使用以下代码:

iris_ds.set_index("Class")

iris_SA = iris_ds.drop("Iris-versicolor", axis=0)
iris_SA = iris_SA.drop("Iris-virginica", axis=0)
但是,当我运行它时,会出现以下错误:

回溯(最近一次呼叫最后一次):
文件“AAA.py”,第18行,在 iris_SA=iris_ds.drop(“iris versicolor”,轴=0)

文件“C:…\Anaconda3\lib\site packages\pandas\core\frame.py”,第行 3940,在下降中 errors=errors)文件“C:…\Anaconda3\lib\site packages\pandas\core\generic.py”,第行 3780,在下降中 obj=obj.\u下降\u轴(标签、轴、级别=级别、错误=错误)

文件“C:…\Anaconda3\lib\site packages\pandas\core\generic.py”, 第3812行,在下降轴上 新建轴=轴。放置(标签,错误=错误)
文件“C:…\Anaconda3\lib\site packages\pandas\core\index\base.py”, 第4965行,下降 “{}在axis中找不到”。格式(标签[mask])键错误:“['Iris-versicolor']在axis中找不到”


关于如何解决的任何建议?

检查以确保您正在重新分配
set\u index
语句,
set\u index
不是就地语句

iris_ds = iris_ds.set_index("Class")


检查以确保您正在重新分配
set\u index
语句,
set\u index
不是就地语句

iris_ds = iris_ds.set_index("Class")


除了回答这个问题,我想提一个名为
df.groupby()
的很棒的工具:

输出:

  class  other
0     a     11
1     a     22
2     b     33
3     b     44
4     b     55
5     c     66
6     c     77
7     c     88 

after groupby:


classname:
a
classdf:
  class  other
0     a     11
1     a     22
=====
classname:
b
classdf:
  class  other
2     b     33
3     b     44
4     b     55
=====
classname:
c
classdf:
  class  other
5     c     66
6     c     77
7     c     88
=====

除了回答这个问题,我想提一个名为
df.groupby()
的很棒的工具:

输出:

  class  other
0     a     11
1     a     22
2     b     33
3     b     44
4     b     55
5     c     66
6     c     77
7     c     88 

after groupby:


classname:
a
classdf:
  class  other
0     a     11
1     a     22
=====
classname:
b
classdf:
  class  other
2     b     33
3     b     44
4     b     55
=====
classname:
c
classdf:
  class  other
5     c     66
6     c     77
7     c     88
=====

您是否正在重新分配设置索引
iris\u ds=iris\u ds。设置索引(“类”)
set\u index
不是就地操作。谢谢。工作得很好。您是否可以将设置为答案并将标记为解决方案您是否可以重新分配
设置索引
iris\u ds=iris\u ds。设置索引(“类”)
set\u index
不是就地操作。谢谢。工作得很好。你能把答案设为答案并将其标记为已解决吗