加载和绘制多个 pickle 文件?
Loading and plotting multiple pickle file?
我在一个文件夹中有多个 pickle 文件,我想先加载它们然后绘制它们。事实上,我想根据他们的名字来绘制它们。因此,我需要将它们加载到不同的数据框或字典中,然后绘制它们。例如,当文件名包含“linear”时我需要使用线性图,而当文件名包含 'scat' 时我需要使用散点图。我可以单独阅读它们,然后使用以下代码绘制它们:
import pickle
with open('path/filename', 'rb') as f:
mydata=pickle.load(f)
f.close()
但问题是这些文件正在发生变化,我的文件越来越少,有时文件越来越多。所以我需要以自动方式进行。有什么想法吗?
您可以按照 here 所述使用 os.listdir() 来获取给定文件夹中所有文件的列表。
然后您可以创建文件名(键)和数据(值)的字典(假设所有文件都具有唯一的名称)。
首先你需要列出所有 pickle 文件:
import glob
all_files = glob.glob('path_to_files/*.pickle')
然后你可以检查文件名是否包含线性或散点:
for curr_file in all_files:
with open(curr_file, 'rb') as f:
mydata=pickle.load(f)
if curr_file.find('linear'):
# code to plot_linear_plot
# ...
if curr_file.find('scatter'):
# code plot_scatter_plot
# ...
我在一个文件夹中有多个 pickle 文件,我想先加载它们然后绘制它们。事实上,我想根据他们的名字来绘制它们。因此,我需要将它们加载到不同的数据框或字典中,然后绘制它们。例如,当文件名包含“linear”时我需要使用线性图,而当文件名包含 'scat' 时我需要使用散点图。我可以单独阅读它们,然后使用以下代码绘制它们:
import pickle
with open('path/filename', 'rb') as f:
mydata=pickle.load(f)
f.close()
但问题是这些文件正在发生变化,我的文件越来越少,有时文件越来越多。所以我需要以自动方式进行。有什么想法吗?
您可以按照 here 所述使用 os.listdir() 来获取给定文件夹中所有文件的列表。
然后您可以创建文件名(键)和数据(值)的字典(假设所有文件都具有唯一的名称)。
首先你需要列出所有 pickle 文件:
import glob
all_files = glob.glob('path_to_files/*.pickle')
然后你可以检查文件名是否包含线性或散点:
for curr_file in all_files:
with open(curr_file, 'rb') as f:
mydata=pickle.load(f)
if curr_file.find('linear'):
# code to plot_linear_plot
# ...
if curr_file.find('scatter'):
# code plot_scatter_plot
# ...