Добавить значения словаря к существующему пандаму - PullRequest
1 голос
/ 10 октября 2019

У меня есть пустой фрейм данных с 30 столбцами, я разбираю каждый файл и извлекаю данные, извлекая метаданные в словарь, ключи словаря совпадают с заголовками столбцов данных, количество ключей в словаре зависит от того, что доступнов файле, как вставить строку в кадр данных на основе значений в словаре?

Данные в файле:

 Col1                 Col2    Col3
 PD  .                 DD:   PERMANENT DATUM
 LMF .                 RT:   LOG MEASURED FROM
 DAPD.FT               98:   FEET ABOVE PERMANENT DATUM
 DMF .                 RT:   DRILLING MEASURED FROM
 EKB .FT               100:   KELLY BUSHING
 EGL .FT             -500:   GROUND LEVEL
 DATE.           08/12/95:   RUN DATE
 RUN .                  3:   RUN NUMBER} 

Заголовки кадра : ПОСТОЯННЫЕ ИЗМЕРЕНИЯ, ИЗМЕРЯЕМЫЙ ИЗ ЖУРНАЛА, ФУТЫ ВЫШЕ ПОСТОЯННЫЕ ИЗМЕНЕНИЯ, ИЗМЕРЕНИЕ ИЗ БУРОВОГО ИЗГОТОВЛЕНИЯ, КЕЛЛИ БУШИНГА

Желаемый результат: Значения в столбце Col2 должны быть преобразованы в строку и соответствовать Col33значение в заголовок dataframe и вставьте строку

Я написал код для анализа файла и преобразования в словарь: {'PERMANENT DATUM': 'DD', 'LOG MEASURED FROM': 'RT', 'FEET ABOVE PERMANENT DATUM': '98', 'DRILLING MEASURED FROM': 'RT', 'KELLY BUSHING': '100', 'GROUND LEVEL': '500', 'RUN DATE': '08/12/95', 'RUN NUMBER': '3'}

Как добавить значения в этом словаре в существующий фрейм данных? ключи в словаре соответствуют заголовкам данных и всегда являются подмножеством заголовков данных.

1 Ответ

0 голосов
/ 10 октября 2019

, если я правильно понимаю вашу проблему, учитывая следующие данные:

df = pd.DataFrame(columns=['PERMANENT DATUM', 'LOG MEASURED FROM', 'FEET ABOVE PERMANENT DATUM', 'DRILLING MEASURED FROM', 'KELLY BUSHING', 'GROUND LEVEL', 'RUN DATE', 'RUN NUMBER'])

row = {'PERMANENT DATUM': 'DD', 'LOG MEASURED FROM': 'RT', 'FEET ABOVE PERMANENT DATUM': '98', 'DRILLING MEASURED FROM': 'RT', 'KELLY BUSHING': '100', 'GROUND LEVEL': '500', 'RUN DATE': '08/12/95', 'RUN NUMBER': '3'}

вы хотите добавить строку в фрейм данных, и вы просто делаете это так:

df = df.append(row, ignore_index=True)

и дает:

  PERMANENT DATUM LOG MEASURED FROM FEET ABOVE PERMANENT DATUM  \
0              DD                RT                         98   

  DRILLING MEASURED FROM KELLY BUSHING GROUND LEVEL  RUN DATE RUN NUMBER  
0                     RT           100          500  08/12/95          3  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...