【发布时间】:2017-03-22 20:39:43
【问题描述】:
下午好,
我这里有一些代码,旨在根据它们所属的“扇区”将大约 200 个 csv 从源文件夹复制到目标文件夹。它们所属的部门通过“符号列表”标识,其中包含带有代码列表的 csv。该代码适用于 most 部分,除了它在符号列表中获取最终 csv 中的代码列表并将所有这些 CSV 复制到所有目标文件夹中。基本上我需要以某种方式将第一个 for 循环与它下面的 3 个 for 循环结合起来,但我很难做到这一点。非常感谢任何 cmets。
import os,sys,shutil
import glob
import pandas as pd
source_dir = 'C:\TS'
dest_dir = 'C:\TS\Combined\Groups\Cross Asset Class'
#dest_dir = 'C:\TS\Combined\copytest'
base = 'C:\TS\Combined\Groups'
dest_dirlist = (base +'/Cross Asset Class', base+'/Bonds', base + '/Commodities', \
base + '/Countries', base + '/Currencies', base + '/Industry Sectors', base + '/Segments and Styles', \
base + '/Us Sectors', base + '\Volatilities')
print(dest_dirlist)
symbolslist = (base+'/Cross Asset Class.csv', base+'/Bonds.csv',base+'/Commodities.csv' \
,base+'/Currencies.csv', base+'/Industry Sectors.csv', base+'/Segments and Styles.csv', \
base+'/US Sectors.csv')
for file in symbolslist:
print(file)
df_symbolslist = pd.read_csv(file)
print(df_symbolslist)
for ticker_file in glob.glob(os.path.join(source_dir, '*.csv*')):
for ticker in df_symbolslist['Ticker']:
print(ticker)
if ticker in ticker_file:
for path in dest_dirlist:
shutil.copy(ticker_file, path)
print(ticker + ' File Copied')
非常感谢您的宝贵时间。
【问题讨论】:
-
df_symbolslist = pd.read_csv(file)不断覆盖df_symobolslist。您只处理最后一个。我对这里的格式感到困惑……symbollist csv 是什么样的?它们如何编码扇区和符号? -
这是符号列表 csv 的样子:prntscr.com/en97is
-
这是要复制的 csvs 的样子。 prntscr.com/en98d2
-
符号 csv 的名称是扇区组。 csv 中的单个代码是行业成分。
-
你能把这些截图转换成文本并在这里发布吗?这让其他人可以更方便地查看正在发生的事情。