【发布时间】:2019-08-14 12:52:26
【问题描述】:
我在 ipython 方面的经验有限,我在研究实验室工作。我们运行一个实验,在完成获取结果后输出一个 .txt 文件。到目前为止,由于 .txt 文件的格式,我们需要先复制并粘贴到 Excel 工作表中,然后进行一系列烦人的复制和粘贴,以便按照我们想要的顺序获得不同的行。
我们需要的唯一重要的列是“well”列和“Abs”列。我需要找到一种方法,以便我可以识别 Abs 编号及其相关的井标识。最终目标是让我编写一个脚本来执行一些超级简单的数学运算,例如平均井 H01 和 H02,以便我可以从其余井中减去该数字。
这可能令人困惑,但如果您对除了阅读文件之外的其他地方有任何问题或想法(这是我现在所能做的),请告诉我。您的帮助将不胜感激!
我尝试过的代码(不是很多)
从未来进口部门 将 numpy 导入为 np 将 matplotlib.pyplot 导入为 plt 从 scipy.optimize 导入曲线拟合 %matplotlib 内联
data = np.loadtxt('python test file.txt',skiprows= 3, usecols=(1,7), dtype= str, unpack=True) 打印(数据)
这是打印出来的……
[[“b'A01'”“b'B01'”“b'C01'”“b'D01'”“b'E01'”“b'F01'”“b'G01'”“b' H01'" “b'H02'” “b'G02'” “b'F02'” “b'E02'” “b'D02'” “b'C02'” “b'B02'” “b'A02'” "b'A03'" "b'B03'" "b'C03'" "b'D03'" "b'D04'" "b'C04'" "b'B04'" "b'A04'"] [“b'6'”“b'6'”“b'5.3501'”“b'6'”“b'6'”“b'6'”“b'3.59128'”“b'0.177349'” “b'0.174828'” “b'3.42995'” “b'6'” “b'5.37723'” “b'5.39004'” “b'5.54484'” “b'6'” “b'6'” “b'5.35271'” “b'3.78453'” “b'5.41057'” “b'6'” “b'6'” "b'5.3402'" "b'3.04992'" "b'6'"]]
【问题讨论】:
-
您的文件看起来像制表符分隔的 csv。我建议您使用 pandas read_csv 函数将文件作为 DataFrame 读取。代码看起来像```pd.read_csv(file_path, sep="\t", skiprows=2)。它 pandas DataFrame 还将支持其他操作,如平均、求和等。如果您可以将文件的一些初始部分粘贴到问题中会更容易