由于某种原因,我无法使用我认为的正常方法从数据框中删除行:
import numpy as np
import pandas as pd
import random
############################################
### Define reach schools and draw sample ###
############################################
####Toy Dataset ####
new_data_frame = pd.DataFrame (
{"school": ['Williams College', 'Other School'],
"quality": ['A', 'B'],
"finances": [1, 2],
"rank": [1,2]
})
print (new_data_frame)
#then I try to drop using the syntax I thought was normal
new_data_frame.drop('Williams College') #where the error occurs
print (new_data_frame)
我原本希望python删除掉以“威廉姆斯学院”开头的观察结果,而让我只剩下以“其他学校”开头的行,而是抛出一个错误并退出。
这是错误:
Traceback (most recent call last):
File "pandasplay.py", line 23, in <module>
new_data_frame.drop('Williams College')
File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\frame.py", line 3940, in drop
errors=errors)
File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\generic.py", line 3780, in drop
obj = obj._drop_axis(labels, axis, level=level, errors=errors)
File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\generic.py", line 3812, in _drop_axis
new_axis = axis.drop(labels, errors=errors)
File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\indexes\base.py", line 4965, in drop
'{} not found in axis'.format(labels[mask]))
KeyError: "['Williams College'] not found in axis"