Проблема с переборами файлов GeoJSON - PullRequest
0 голосов
/ 14 октября 2018

У меня есть несколько файлов GeoJSON, которые я пытаюсь объединить в один DataFrame.Когда я открываю их по отдельности с помощью GeoPandas.read_file, проблем не возникает.Однако, когда я пытаюсь перебрать файлы, я получаю следующую ошибку:

CPLE_OpenFailedError: b'Failed to read GeoJSON data'

Вот мой код:

directory = 'C:\\Users\\Data\\output'
df = pd.DataFrame()
for file in os.listdir(directory):
    filename = os.fsdecode(file)
    df2 = gpd.read_file(os.path.join(directory,filename))
    df = df.append(df2)

Печать os.path.join (каталог, имя файла) возвращает правильную строку, поэтому я не понимаю, почему это не работает, так как я понимаю, что должно.

1 Ответ

0 голосов
/ 14 октября 2018

Я думаю, что нашел проблему.Некоторые файлы были пустыми, что вызвало ошибку.Приведенный ниже код работает.

directory = 'C:\\Users\\Data\\output'
df = pd.DataFrame()
errors = []
for file in os.listdir(directory):
    try:
        filename = os.fsdecode(file)
        df2 = gpd.read_file(os.path.join(directory,filename))
        df = df.append(df2)
    except:
        errors.append(filename)
...