Python 根据索引从pandas数组中删除值
可能以前有人问过,但找不到适合我的答案 我有一个相当大的数组,由3个唯一的类名组成。我正在尝试根据索引值创建3个新数组。使用Fisher's Iris数据集(因为它较小且易于测试),我尝试使用以下代码: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) 但是,当我运行它时,会出现以下错误: 回
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
不是就地操作。谢谢。工作得很好。你能把答案设为答案并将其标记为已解决吗