我有一个pandas数据帧说des_frame,我通过处理一个txt文件说split_aa。我想写一个csv文件,它应该有一个名字' OP_aa'。 如果输入是split_bb,则输出应为OP_bb,依此类推。我怎么能这样做。
我试过了 des_frame.to_csv(' OUTPUT_FILE' 09月=' \吨&#39)
我不知道如何分配特定于输入的output_file名称 感谢
答案 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')