写入具有特定名称的csv文件

时间:2015-01-20 19:31:06

标签: pandas

我有一个pandas数据帧说des_frame,我通过处理一个txt文件说split_aa。我想写一个csv文件,它应该有一个名字' OP_aa'。 如果输入是split_bb,则输出应为OP_bb,依此类推。我怎么能这样做。

我试过了 des_frame.to_csv(' OUTPUT_FILE' 09月=' \吨&#39)

我不知道如何分配特定于输入的output_file名称 感谢

2 个答案:

答案 0 :(得分:0)

您可以将输入文件名保存在变量中,并使用它来生成输出文件名。类似的东西:

input_file = 'split_aa'
output_file = 'OP_' + input_file.split('_')[1]

并使用output_file变量写入csv:

des_frame.to_csv(output_file, sep='\t')

答案 1 :(得分:0)

您需要做的就是使用正则表达式从输入文件中获取正确的字母(split_aa.txt),然后使用%s样式获取输出文件的正确文本。

import re
import pandas as pd

input_file = 'split_aa.txt'
suffix = re.sub('.*_','',input_file)
suffix = re.sub('.txt','',suffix)

des_frame = pd.DataFrame({'a':[1,2],'b':[6,1]})
des_frame.to_csv('OP_%s.csv' % suffix,sep='\t')