У меня есть файл Excel с двумя листами, и я пытаюсь прочитать их оба в виде данных, как в приведенном ниже коде. Тем не менее, я получаю ошибкуKeyError при чтении из данных Excel в dataframe
KeyError: "['months_to_maturity' 'asset_id' 'orig_iss_dt' 'maturity_dt' 'pay_freq_cd'\n 'coupon' 'closing_price'] not in index"
в линии
return df[['months_to_maturity', 'asset_id', 'orig_iss_dt', 'maturity_dt' , 'pay_freq_cd', 'coupon', 'closing_price']]
в функции SecondExcelFileReader()
. Тем не менее, оба листа имеют заголовки
asset_id orig_iss_dt maturity_dt pay_freq_cd coupon closing_price months_to_maturity
Я возвращаюсь df
следующим образом, как это порядок, в котором я хочу, чтобы столбцы.
def ExcelFileReader():
xls = pd.ExcelFile('D:/USDataRECENTLY.xls')
df = xls.parse(xls.sheet_names[0])
return df[['months_to_maturity', 'asset_id', 'orig_iss_dt', 'maturity_dt' , 'pay_freq_cd', 'coupon', 'closing_price']]
def SecondExcelFileReader():
xls = pd.ExcelFile('D:/USDataRECENTLY.xls')
df = xls.parse(xls.sheet_names[1])
return df[['months_to_maturity', 'asset_id', 'orig_iss_dt', 'maturity_dt' , 'pay_freq_cd', 'coupon', 'closing_price']]
def mergingdataframes():
df1 = ExcelFileReader()
df2 = SecondExcelFileReader()
return pd.concat([df1, df2])
Edit: Этот файл Excel был экспортирован из Sybase Oracle SQL Developer и, следовательно, первый лист пришел уже с названиями. Я просто скопировал и вставил второй лист с теми же заголовками. Кроме того, у меня есть проблема со вторым листом.
Вы не получите вопрос на первом листе? –
@AnandSKumar У меня нет проблемы с первым листом. Мне нужно объяснить, что этот файл Excel был экспортирован из Sybase Oracle SQL Developer, и, следовательно, первый лист уже появился с названиями. Я только что скопировал и вставил второй лист с названиями. – user131983
Можете ли вы показать второй лист и первый лист (может быть, скриншот)? –