【问题标题】:Python / Jupyter Notebook: Parsing one text file with multiple sets of data into a pandas dataframePython / Jupyter Notebook:将一个包含多组数据的文本文件解析为 pandas 数据框
【发布时间】:2021-06-12 00:29:27
【问题描述】:

我是一个相当新的 Python 用户,一直在使用 pandas 和 matplotlib 为我的研究做一些数据分析。特别是,我有一个包含 3 组数据的数据文件:2 个列向量和一个数组(请参阅此处指向 google drive 的链接以获取相同格式的简单 3x3 示例:Sample data。最后,我需要绘制这是一个二维热图,列向量指定 x 和 y 轴,数组填充我的热点。

我可以使用 pandas.read_csv() 和 skiprows 来为一个文件执行此操作,但是每个向量和数组的维度在我运行的所有模拟中都会有所不同。因此,我必须为每个不同的文件找到每组数据的开始和结束。我拥有的最大文件是 (229, 1), (229, 1), (229, 229)。

我的问题是:有没有办法根据我的输出文件具有的格式化方法来指定每组数据的开始和结束?这可以在 pandas 数据框或数组中完成。我更喜欢数据框,只是为了便于在绘图前执行计算。

任何帮助将不胜感激!

【问题讨论】:

    标签: python pandas import


    【解决方案1】:

    有很多方法可以做到这一点,我认为这都是关于数据预处理或清理的。

    这里有一些提示:

    • 您在 1 个文件中的 3 个数据集被“\n\n”(两个连续的 \n)分割,您可以先open() 它,然后.read() 所有内容,然后.split('\n\n') 它首先。
    • 对于每个拆分数据集,第一行并不重要(或者只是有一些名称或(行、列)信息),如果它们有一些排序规则,您可以直接跳过它(可能是.split('\n')[1:])。李>
    • 对于每个拆分数据集,其他行是数据内容,您可以将其传递给pd._read_csv 或类似的东西。

    希望这些提示对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-21
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-01
      • 1970-01-01
      相关资源
      最近更新 更多