[英]KeyError Sorting Dataframe - Column Name / Index Not Recognized
我是 Python 初学者。 我创建了一个脚本来登录网站并从表中创建 dataframe。 最终,这个 dataframe 将被发送到 MS Excel 工作簿,但我需要先对其进行正确排序。
我的问题是对 dataframe 进行排序。 我想按其中一列按降序对 dataframe 进行排序。 我得到一个 KeyError。 由于某种原因,未找到列名。
这是我正在使用的代码:
from bs4 import BeautifulSoup
import pandas as pd
from selenium import webdriver
DRIVER_PATH = '<PATH TO DRIVER>'
from selenium.webdriver import chrome
from selenium.webdriver.support.select import Select
driver = webdriver.Chrome(executable_path='<PATH TO DRIVER>')
#open Report Website
driver.get('<URL OF LOGIN PAGE')
#Login to Report Website
element = driver.find_element_by_id('txtUID')
element.click()
element.clear()
element.send_keys('<MY USERNAME>')
element = driver.find_element_by_id('txtPWD')
element.click()
element.clear()
element.send_keys('<MY PASSWORD>')
import time
time.sleep(2)
element = driver.find_element_by_id('Send')
element.click()
#Navigate to Report Page
driver.get('<URL TO REPORT PAGE>')
#create df
html = driver.page_source
soup = BeautifulSoup(html)
table = soup.find_all('table')[1]
df = pd.read_html(str(table))[0]
sorted_df = df.sort_values(by='Pct Of Widgets w/ Green Label')
除了尝试按列名排序之外,我还尝试使用以下代码按列号排序:
sorted_df = df.sort_values(by='8')
但我得到相同的 KeyError。 这似乎是一件很简单的事情,我不明白为什么没有找到列引用。
我的具体问题是-按其中一列按降序对 dataframe 进行排序的最简单方法是什么?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.