使用 pandas 读取子文件夹中的所有文件
read all files in sub folder with pandas
我的笔记本在主文件夹中,我还有另一个文件夹“test”。在 test 文件夹中,我有 5 个子文件夹。每个文件夹都包含一个 .shp 文件。我想遍历测试中的所有子文件夹并打开所有 .shp 文件。被覆盖也没关系
data = gpd.read_file("./test/folder1/file1.shp")
data.head()
我该怎么做?我试过这个
path = os.getcwd()
files = glob.glob(os.path.join(path + "/test/", "*.shp"))
print(files)
但这只会深入一层。
您可以使用 os 库中的 os.walk 方法。
import os
import pandas as pd
for root, dirs, files in os.walk("./test"):
for name in files:
fpath = os.path.join(root, name)
data = pd.read_file(fpath)
只需执行os.chdir(路径),然后使用glob.glob(os.path.join('*.shp'))。它应该工作。
您已经给出了加入 'os.path'.
的字符串
我的笔记本在主文件夹中,我还有另一个文件夹“test”。在 test 文件夹中,我有 5 个子文件夹。每个文件夹都包含一个 .shp 文件。我想遍历测试中的所有子文件夹并打开所有 .shp 文件。被覆盖也没关系
data = gpd.read_file("./test/folder1/file1.shp")
data.head()
我该怎么做?我试过这个
path = os.getcwd()
files = glob.glob(os.path.join(path + "/test/", "*.shp"))
print(files)
但这只会深入一层。
您可以使用 os 库中的 os.walk 方法。
import os
import pandas as pd
for root, dirs, files in os.walk("./test"):
for name in files:
fpath = os.path.join(root, name)
data = pd.read_file(fpath)
只需执行os.chdir(路径),然后使用glob.glob(os.path.join('*.shp'))。它应该工作。 您已经给出了加入 'os.path'.
的字符串