Как получить доступ к данным в листе XLSX, где некоторые поля относятся к другим листам? - PullRequest
0 голосов
/ 22 марта 2019

enter image description here

18F-AV-1451-A07 Значение относится к другому листу под названием «СОДЕРЖАНИЕ», в котором столбец «B» и строка «3».

Я загружаю фрейм данных, используя код

pd.read_excel('data/A07.xls',sheet_name = 'DM',skiprows = 12, skipfooter = 2)

enter image description here

Я получаю нулевое значение в этом столбце «Определение преобразования» вместо «18F-AV-1451-A07».

как я могу получить эти данные в моем фрейме данных, и я не хочу делать это жестко.

1 Ответ

0 голосов
/ 25 марта 2019

Первые кредиты, я на самом деле не решил эту проблему, я получил помощь от пользователя U9-Forwrad, теперь для этого вам нужно


import pandas as pd
xlsx = pd.ExcelFile('Sample.xlsx')
df1 = pd.read_excel(xlsx, 'CONTENT', header=None)
df2 = pd.read_excel(xlsx, 'Sheet2')
boolean = df2['Class'].isin(df1[0].fillna(df1[1]).dropna())
idxs = boolean.index[boolean == True]
print(df2.iloc[idxs[0]:idxs[1]+1])

, что дает вам

         Day Month Class
1    tuesday   Feb    CM
2  Wednesday   Mar   NaN
3   Thursday   Apr   NaN
4     Friday   May   NaN
5   Saturday   Jun   NaN
6     Sunday   Jul    DM

Я думаю, это то, что вы ищете.

Примечание. Вам нужно будет преобразовать файл в xlsx, формат ODS не поддерживается пандами.

...