我的DataFrame有一个索引SubjectID,并且每个Subject ID都有它自己的目录。在每个主题目录中都有一个.csv文件,其中包含要放入我的DataFrame中的信息。使用我的SubjectID索引,我想读取每个主题的.csv文件的标题,并将其放入我的DataFrame中的新列。从不同目录读取多个.csv文件到熊猫DataFrame
除了个别主题号码,每个主题目录具有相同的路径。
我已经找到了从单个目标目录中读取多个.csv文件到熊猫数据框的方法,但不能从多个目录中读取。下面是一些代码,我有一种从目标目录导入多个.csv档案来:
subject_path = ('/home/mydirectory/SubjectID/')
filelist = []
os.chdir('subject_path')
for files in glob.glob("*.csv") :
filelist.append(files)
# read each csv file into single dataframe and add a filename reference column
df = pd.DataFrame()
columns = range(1,100)
for c, f in enumerate(filelist) :
key = "file%i" % c
frame = pd.read_csv((subject_path + f), skiprows = 1, index_col=0, names=columns)
frame['key'] = key
df = df.append(frame,ignore_index=True)
我想要做类似的事情,但反复进入不同主题的目录,而不是具有单一目标目录。
编辑: 我觉得我要做到这一点使用os
不pandas
,有没有使用循环使用os
通过多个目录搜索的方法吗?
上面的代码是什么,我已经尝试了从单一的目录中导入的.csv,问题是,我不是确定如何适应这个从多个目录导入文件。 – MScar
也许使用循环并搜索多个主题路径? –
我想用'os'来做这个吗?这看起来不像是可以在熊猫中完成的 – MScar