在pandas中读取tar压缩文件?

时间:2015-07-01 18:47:31

标签: python pandas tar

此代码似乎运行良好,它需要一个文件列表并以pandas可以读取的格式压缩它们,并将它们组合到一个位置。

编辑 - 修改代码只添加新文件(基于tar中不存在的文件)。

os.chdir(r'C:\\Users\Documents\FTP\\')
saveloc = r'\\fnp\myDownloads\\'
compression = "w:bz2"
extension = '.tar.bz2'

filename = 'Global_Performance'
filetype = 'performance_*.csv'
tarname = saveloc+filename+extension

files = glob(filetype)
tar = tarfile.open(tarname, compression)
for file in files:
    if file not in tarname:
        tar.add(file)
tar.close()

filename = 'Global_Status'
filetype = 'status_*.csv'
tarname = saveloc+filename+extension

files = glob(filetype)
tar = tarfile.open(tarname, compression)
for file in files:
    if file not in tarname:
        tar.add(file)
tar.close()
  1. pandas有没有办法从该tar文件中读取?我可以指定文件中我知道的文件,或者将所有文件连接成一个文件吗?
  2. 能够添加新文件很不错,但我认为计算机必须读取所有文件名以确定它是否存在。有没有办法修改代码,只根据创建日期或其他东西添加最新的文件?这可以加速只压缩和读取最新文件,或者可能只在一个时间范围内(30天可能而不是读取可追溯到2010年的目录中的文件)?
  3. 如上所示,我正在读取目录中的每个文件类型(基于文件名)并将其添加到单独的tar中。有没有办法优化这一点而不是一遍又一遍地粘贴相同的代码(我这样做有10多个文件)?
  4. 编辑 - 此代码似乎运行得非常慢。我的目的是只找到不在tar中的最新文件,然后压缩它们并将它们添加到现有的tar中。根据它所花费的时间,我认为它仍在压缩所有文件并替换它们。有人可以帮我做一个更有效的过程。

0 个答案:

没有答案