如何更有效地读取文本文件和写入数据框行?

时间:2020-07-20 18:58:23

标签: python pandas

我正在从文本文件中读取行,并将所需的数据写入pandas数据框中的行。以下代码(简化)有效,但在计算上似乎效率不高:

    with open(DataFile, 'r') as file:
        lines = file.readlines()
        for line in lines:
            data = line.strip().split("\t")
            df = pd.DataFrame(np.append(df.values, [data], axis=0))

我也尝试过这个,但是速度更慢:

    with open(DataFile, 'r') as file:
        lines = file.readlines()
        for line in lines:
            i += 1
            data = line.strip().split("\t")
            df.loc[i] = data

是否有更有效的计算方法来做到这一点?可能会为数据帧预先分配内存?

1 个答案:

答案 0 :(得分:1)

您可以尝试通过pandas.read_csv()读取制表符分隔的文件:

df = pandas.read_csv(DataFile, sep='\t', lineterminator='\n')