解析每个文件夹以获取python中的信息
我有一个目录,每个客户都有一个文件夹。在每个客户文件夹中都有一个名为解析每个文件夹以获取python中的信息,python,pandas,opencsv,Python,Pandas,Opencsv,我有一个目录,每个客户都有一个文件夹。在每个客户文件夹中都有一个名为surveys.csv的csv文件。我想打开每个客户文件夹,然后从csv中提取数据并连接。我还想创建一个列,其中客户id是文件夹的名称 import os rootdir = '../data/customer_data/' for subdir, dirs, files in os.walk(rootdir): for file in files: csvfiles = glob.glob(os.p
surveys.csv
的csv文件。我想打开每个客户文件夹,然后从csv中提取数据并连接。我还想创建一个列,其中客户id是文件夹的名称
import os
rootdir = '../data/customer_data/'
for subdir, dirs, files in os.walk(rootdir):
for file in files:
csvfiles = glob.glob(os.path.join(mycsvdir, 'surveys.csv'))
# loop through the files and read them in with pandas
dataframes = [] # a list to hold all the individual pandas DataFrames
for csvfile in csvfiles:
df = pd.read_csv(csvfile)
df['patient_id'] = os.path.dirname
dataframes.append(df)
# concatenate them all together
result = pd.concat(dataframes, ignore_index=True)
result.head()
这段代码只提供了一个包含一个客户数据的数据帧。在目录“../data/customer_data/”中,应该有大约25个包含客户数据的文件夹。我想将所有25个surveys.csv
文件连接到一个数据帧中。请帮助写下这行:
dataframes=[]
外部for循环的外部
它会在每个循环中删除列表
其他问题:
- 在这一行中
-使用csvfiles=glob.glob(os.path.join(mycsvdir,'surveys.csv'))
获取文件的完整路径subdir
只是一个文件-为什么要使用循环来读取它csvfiles
- 把这一行写上:
dataframes=[]
外部for循环的外部
它会在每个循环中删除列表
其他问题:
- 在这一行中
-使用csvfiles=glob.glob(os.path.join(mycsvdir,'surveys.csv'))
获取文件的完整路径subdir
只是一个文件-为什么要使用循环来读取它csvfiles
mycsvdir
?它仍然只显示最后一个文件。我在想也许我没有正确地整理文件夹?什么是mycsvdir
?