我有许多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(目录,文件名)会产生正确的字符串,所以我不明白为什么这不能正常工作。
答案 0 :(得分:0)
我认为我找到了问题。一些文件为空,从而导致错误。下面的代码有效。
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)