Как я могу использовать входную библиотеку, чтобы создать один файл catalog.yaml для ссылки на вложенные каталоги? - PullRequest
0 голосов
/ 11 октября 2019

У меня есть следующие вложенные каталоги:

\---population
    +---asia
    |   |   asia_pop.csv
    |   |   
    |   +---china
    |   |       china_pop.csv
    |   |       
    |   \---japan
    |           japan_pop.csv
    |           
    \---europe
        |   europe_total_pop.csv
        |   
        +---france
        |       france_pop.csv
        |       
        \---uk
                uk_pop.csv

Есть ли способ создать один файл catalog.yaml, который может работать с каталогами следующим образом?

Import intake
root = intake.open_catalog(‘/population/population.yaml’)

# load china population

root.asia.china.read()

Я знаю, что это возможно путем вложения нескольких файлов catalog.yaml, но есть ли способ сделать это в одном файле.

Например:

metadata:
  version:1

sources:
  asia:
    china:
      driver: csv
      args:
        skiprows:10
        url:'/population/asia/china/china_pop.csv'
      metadata: {}

    japan:
      driver: csv
      args:
        skiprows:10
        url:'/population/asia/japan/japan_pop.csv'
      metadata: {}

1 Ответ

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

Я не знаю о intake, но вы можете сделать это прямо так:

import yaml

catalog = yaml.load('/population/population.yaml')

pop_file = open(catalog.sources.asia.china.args.url, "r")
pop_file.read()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...