我目前正在开发一个循环,其中将对目录中的每个csv进行重新采样,然后另存为新的csv。但是,我只想保留变量中包含的原始路径字符串的一部分,以便可以为新文件添加标识符。
例如,通过循环拾取的文件可能是:
'...\folder1\101_1000_RoomTemperatures.csv'
但我希望新保存的文件如下所示:
'...\folder2\101_1000_RoomTemperatures_Rounded.csv'
已经注意到有关此问题的SQL和C相关文章-但是,我怀疑与python环境无关的解决方案。使用下面的代码,我可以重命名输出以实现区分,但是,这并不理想!
for filename in os.listdir(directory):
if filename.endswith('.csv'):
# Pull in the file
df = pd.read_csv(filename)
# actions occur here
# Export the file
df.to_csv('{}_rounded.csv'.format(str(filename)))
使用此代码的输出为:
'...\folder1\101_1000_RoomTemperatures.csv_rounded.csv')
一个简单的解决方案是按点分隔并省略最后一个点之后的部分以获取基本文件名(不带文件扩展名):
>>> filename = r'...\folder1\101_1000_RoomTemperatures.csv'
>>> filename
'...\\folder1\\101_1000_RoomTemperatures.csv'
>>> base_filename = '.'.join(filename.split('.')[:-1])
>>> base_filename
'...\\folder1\\101_1000_RoomTemperatures'
然后使用它base_filename
来命名新名称:
df.to_csv('{}_rounded.csv'.format(base_filename))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句