python - 遍历文件夹并将每个 CSV 的一列添加到 Dataframe

标签 python csv pandas dataframe

我有一个包含约 90 个 CSV 文件的文件夹。每个相关文件均命名为 xxxxx-2012,并具有相同的列名称。

我想从每个文件中创建一个具有特定列power(MW)的单个DataFrame,总共90列,在生成的DataFrame中命名该列按文件名。

最佳答案

我解决此类问题的目标是尽快获得简单的数据结构。在本例中,这可能是 DataFrame 的文件名字典。

frames = {filename: pd.read_csv(filename) for filename is os.listdir()}

您可能必须过滤掉错误的文件名,例如通过扩展,或者您可能最好使用 glob...无论哪种情况它都能解决问题,这应该不会太糟糕。

那么问题就变得容易多了*:

  1. 如何从 DataFrame 中获取一列。 df[列名].
  2. 如何将列列表连接到 DataFrame。

*假设您了解 python 数据结构,例如列表推导式。

<小时/>

另一种选择是连接整个字典:

pd.concat(frames)

(它为您提供包含所有信息的 MultiIndex。)

关于python - 遍历文件夹并将每个 CSV 的一列添加到 Dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33576783/

相关文章:

python - 使 atexit 注册函数根据退出状态起作用

javascript - 将 float 写入 Node 中的csv文件

python - 比较具有相同 id 的 Pandas 数据帧的几个值

python - 分组行 python pandas

python - Pandas :如何在数据框列中找到特定模式?

python - 查找Tensorflow中的所有检查点路径

java - 如何找到图像文件中的隐藏文件 (Jpg/Gif/Png)

python - 条件 Flask-WTF 表单字段

python - 读取文本文件、操作字符串并以特定格式导出 csv

python - 在mysql加载数据文件导入期间删除CSV公式值