我试图让我的代码读取包含各种文件的文件夹。
我希望让 Jupyter 读取该文件夹中的每个文件,并通过将文件名称作为数据帧名称来创建单独的数据帧。
到目前为止我有代码:
import glob
path = r'C:\Users\SemR\Documents\Jupyter\Submissions'
all_files = glob.glob(path + "/*.csv")
li = []
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0, usecols=['Date', 'Usage'])
li.append(df)
frame = pd.concat(li, axis=0, ignore_index=True)
此代码连接数据,但我希望每个数据帧都有单独的数据帧,以便我可以单独存储值。有什么我可以用的吗?
Here are examples of how the CSV files look:
这些 CSV 文件位于同一文件夹中,因此我希望当我运行代码时,会创建与 CSV 文件名相同的新数据帧。
谢谢。
为每个数据帧使用不同变量的更好方法是将每个数据帧加载到字典中。
每个文件名的基本名称可以使用以下组合来提取os.path.basename()
and os.path.splitext()
.
例如:
d = {os.path.splitext(os.path.basename(f))[0] : pd.read_csv(f) for f in glob.glob('*test*.csv')}
另外,使用*test*
将避免需要if
在领悟中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)