【发布时间】:2020-11-19 15:17:15
【问题描述】:
您好,我有一个文本文件,其中包含如下数据并保存在名称 input.file 中
2.0_39_RAS.out 1.911157 1.5 80 0 10
2.8_29_BAS.out 2.224520 1.5 78 0 60
2.0_29_CGD.out 2.198376 1.5 85 0 28
2.0_28_MPK.out 1.945320 1.5 78 0 36
2.1_30_CLR.out 2.281479 1.5 78 0 16
我只想使用列值进行一些计算,并希望将其输出写入最后一列,如下所示:
输出:我需要将4th 列与6th 列值相乘,并希望将其除以第一列中存在的.out 字符串的第二个数字(39,29,29,28,30)
output
2.0_39_RAS.out 1.911157 1.5 80 0 10 (80*10)/39
2.8_29_BAS.out 2.224520 1.5 78 0 60 (78*60)/29
2.0_29_CGD.out 2.198376 1.5 85 0 28 (85*28)/29
2.0_28_MPK.out 1.945320 1.5 78 0 36 (78*36)/28
2.1_30_CLR.out 2.281479 1.5 78 0 16 (78*16)/30
我试图为此编写一个脚本
import numpy as np
import glob
import os
import sys
from pathlib import Path
dir1 = glob.glob('/home/drem/data/input.file')
for files in dir1:
x=files
a = open(x,'r')
b = a.readlines()
a.close()
for line in b:
columns=line.split()
print(columns)
col4=columns[3]
print(col4)
但是,它不访问列值,也不进行计算...我希望专家能帮助我。提前致谢。
【问题讨论】:
-
我建议对这种表格数据使用
pandas。 -
你能帮忙看看怎么做吗
标签: python numpy for-loop split readline