循环创建多个数据帧

2023-12-05

我有一个列表,每个条目都是一个公司名称

companies = ['AA', 'AAPL', 'BA', ....., 'YHOO']

我想为列表中的每个条目创建一个新的数据框。

就像是

(伪代码)

for c in companies:
     c = pd.DataFrame()

我已经寻找一种方法来做到这一点,但找不到。有任何想法吗?


只是为了强调我对 @maxymoo 的回答的评论,这几乎总是一个坏主意(“代码气味") 将名称动态添加到 Python 命名空间。原因有很多,最重要的是:

  1. 创建的名称可能很容易与逻辑已使用的变量发生冲突。

  2. 由于名称是动态创建的,因此您通常还会使用动态技术来检索数据。

这就是该语言中包含字典的原因。正确的操作方法是:

d = {}
for name in companies:
    d[name] = pd.DataFrame()

现在你可以写一个听写理解表达式做同样的事情,但有些人发现它的可读性较差:

d = {name: pd.DataFrame() for name in companies}

Once d被创建了DataFrame对于公司x可以检索为d[x],这样您就可以很容易地查找特定公司。要对所有公司进行操作,您通常会使用如下循环:

for name, df in d.items():
    # operate on DataFrame 'df' for company 'name'

在 Python 2 中你可以更好地编写

for name, df in d.iteritems():

因为这避免了实例化列表(name, df)元组 那.items()在旧版本中创建。 现在这在很大程度上具有历史意义,尽管会有 当然,Python 2 应用程序仍然存在并且需要 (希望偶尔)维护。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

循环创建多个数据帧 的相关文章

随机推荐

  • 从终端调用时使用默认的 Python 而不是 Anaconda 安装

    我最近安装了 Anaconda 版本的 Python 现在当我打字时python进入终端后 它会打开 Anaconda 发行版而不是默认发行版 如何让它使用命令的默认版本python在 Linux 上 Ubuntu 12 04 精确的穿山甲
  • Lint:如何忽略“ 未翻译为 <语言>”错误?

    我无法编译 调试我们的 Android 应用程序 因为本地化文件还不完美 我的 IDE 验证工具Lint创建错误说 newCardsOrderVals 未翻译为 ar bg ca cs 使用 Ant 编译 安装 运行工作正常 但我想使用我的
  • 是否可以在 firebase 上运行 graphql 订阅?

    我想将 GraphQL 订阅与 Firebase 云功能结合使用 在我之前的问题中 我描述了当我将代码部署到 Firebase 时 它 让我崩溃了 Could not connect to websocket endpoint 我什至无法手
  • 在 C++ 类中使用

    我想使用
  • 大量圆的碰撞检测

    What is the best way to check collision of huge number of circles It s very easy to detect collision between two circles
  • Laravel 嵌套数组验证器

    我使用 Laravel Validator 类对数组进行一些基本验证 我的数组 employee name name employee address address employee department name deptname em
  • iOS - setObject 与 Synchronize

    新手问题 如果我将一个对象设置到 NSUserDefault 中 我是否还需要同步以确保该对象永久返回到 NSUserDefault 数据库中 我想我要问的是 setobject 是将对象永久放回到数据库中还是放入需要同步以确保永久存储的临
  • 如何使 tr1::array 分配对齐内存?

    您可以分配一个 std vector 它通过定义自己的分配器来分配对齐的堆内存 您可以使用 declspecalign 在堆栈上分配 C 样式数组 但是你能声明一个 tr1 array 来保证索引零处的元素对齐吗 tr1 array and
  • Net Core:实体框架中的通用存储库主 ID 关键性能

    我们正在审查通用存储库模式中的两种不同方法 目前 想要将主键映射到 Id 这样做的目的是映射到使用 Id 的通用存储库接口 下面提供两种解决方案 FindPrimaryKey Properties 对性能有何影响 在尝试查找主键时是否会导致
  • Python requests 模块多线程

    有没有可能使用多处理接口来加速我的代码 问题是这个接口使用了map函数 它只适用于1个函数 但我的代码有3个功能 我尝试将我的功能合并为一个 但没有成功 我的脚本从文件中读取站点的 URL 并对其执行 3 个功能 For 循环使它非常慢 因
  • 对列列表执行不同的函数,并使用 data.table 自动生成新的列名称

    我的 Shiny 应用程序中有一个部分可以生成列表 列表的名称是dataframe我们将计算 列表项包含我们想要的计算 想要这样做 apply to all list names for listname column x 计算functi
  • 使用 PHP 读取文件 - fopen/fread

  • 求矩阵元素组合的最小和

    昨天我的一位朋友带着一个问题来找我寻求解决方案 问题 我有一个matrix n x m 我需要找出从这些矩阵元素中可以产生的最小总和 条件是 计数只能从左上角的单元格开始 和 应在右下单元格结束 该算法应该计算所有可能的路径 这样我就需要找
  • 返回每个其他元素的列表的方案过程

    虽然我认为我已经完成了 90 但在计划中实现这个程序时遇到了一些麻烦 不幸的是 我需要对此说得有点含糊 因为这是一项家庭作业 我要 A B C D 返回 B D 但我收到一个错误 指出 The object returned as an a
  • SFTP 的 .NET 开源代码? [复制]

    这个问题在这里已经有答案了 我用 google 搜索了很多 但找不到 NET 中 SFTP 的单个开源实现 我得到的只是 SFTP 的第 3 方组件 谁能帮助我在 NET 中实现 SFTP See 这个问题 and shrpssh 这是公认
  • Android - 将文本文件保存到哪里?

    我正在使用 Adob e AIR 构建一个 Android 应用程序 允许用户导入和导出 txt 文件 作为保存 txt 文件的默认路径的最佳文件夹是什么 Thanks 您应该将文件保存在外部 SD 卡上 只需在下面创建一个自己的目录环境
  • Discord.py 如何制作掷骰子命令

    大家好 我正在用 Python 编写一个 Discord 机器人 我想编写一个掷骰子命令 我认为我做错了什么 这是代码 client command async def rolldice ctx dice4 1 2 3 4 dice6 1
  • 如何在 UICollectionViewCell 上设置 UILabel?

    我已经用自定义和标准这样做了几十次UITableView细胞 我所有的插座都已连接 这UILabel是我的子视图UICollectionViewCell在IB中 我的UICollectionViewCell对象继承了身份检查器中正确的类 我
  • jTable单元格背景颜色

    我正在尝试使用渲染器为 jTable 的单元格着色 但它们工作得不好 因为它们滞后于表格并使其无法看到 这是我的代码 TableCellRenderer Tcr jTable1 getCellRenderer x y Component c
  • 循环创建多个数据帧

    我有一个列表 每个条目都是一个公司名称 companies AA AAPL BA YHOO 我想为列表中的每个条目创建一个新的数据框 就像是 伪代码 for c in companies c pd DataFrame 我已经寻找一种方法来做