-
一只斗牛犬
根据您的要求,听起来这个 Python 代码应该可以解决问题:import osimport globDIR = "path/to/your/directory"OUTPUT_FILE = "path/to/your/output.csv"HEADER_SIZE = 21input_files = glob.glob(os.path.join(DIR, "*.txt"))for input_file in input_files: print("Now processing", input_file) # read the file with open(input_file, "r") as h: contents = h.readlines() # drop header contents = contents[HEADER_SIZE:] # grab the 2nd column column = [] for row in contents: # stop at the footer if "####" in row: break split = row.split("\t") if len(split) >= 2: column.append(split[1]) # replace the comma column_replaced = [row.replace(",", ".") for row in column] # append to the output file with open(OUTPUT_FILE, "a") as h: h.write("\n".join(column_replaced)) h.write("\n") # end on a newline请注意,这将丢弃不属于输出文件第二列的所有内容。
-
江户川乱折腾
list =[]filename = "my_text"file = open(filename, "r")for line in file: res=line.replace(",", ".") list.append(res) print(res)f = open(filename, "w")for item in list: f.write(item)`enter code here`
-
拉莫斯之舞
下面的代码不是一个精确的解决方案,但如果你按照它的思路去做,你将接近你所需要的。output <- "NewFileName.txt"old_dir <- setwd("your/folder")files <- list.files("\\.txt")df_list <- lapply(files, read.table, skip = 21, sep = "\t")x <- lapply(df_list, '[[', 2)x <- gsub(",", ".", unlist(x))write.table(x, output, row.names = FALSE, col.names = FALSE)setwd(old_dir)