回答
您遇到的问题是使用编号变量的症状。
您可以通过使用DataFrames的 列表(例如data
)而不是使用编号的变量(data1
,data2
,data3
等)完全避免这个问题
关键是要避免在创建编号变量第一个地方。 如果你有以下形式的代码
data1 = ...
data2 = ...
data3 = ...
尝试用东西来取代它像
data = []
data.append(...)
data.append(...)
data.append(...)
或更好,使用列表理解或for循环定义data
。要获得更具体的建议,请向我们展示定义编号变量的代码。
,那么你可以遍历所有的DataFrames与
for df in data:
df.plot(...)
如果从定义编号的变量的一些原因,你不能阻止(别人?),那么你可以使用globals()
(或locals()
)以编程方式访问编号变量:
g = globals()
data = [g['data{}'.format(i)] for i in range(1, 101)]
globals()
返回字典,其键是字符串表示在全局命名空间中名称为 的离子。关联的值是绑定到 这些名称的Python对象。因此,您可以使用globals()
根据这些变量名称的字符串表示查找绑定到 变量名称的值。 如果变量名是在本地(而不是全局)名称空间中定义的,则使用locals()
。
不过,尽量避免使用编号变量。 globals()
的这种使用仅仅是解决其他人造成的麻烦的解决方法。当简单整数索引(列表)应该足够时,使用字符串格式查找变量名称并不是很好的编程风格。最好的解决方案是说服别人停止使用编号变量,并将其传递到列表中。
问题是我无法控制数据的存储方式。我同意从列表中绘制列表和绘图是合理的,但如果数据帧的数量足够大,则生成该列表是一个问题。 – Sepehr
- 1. R:通过检查参考集从列表生成数据帧
- 2. 数据帧生成
- 3. 生成数据帧
- 4. SparkR - 从数据帧列(数值类型)生成分位数
- 5. 从R数据帧生成LaTeX输出
- 6. 使用数据帧生成表格
- 7. 从对象数据库生成列表
- 8. 将几个数据帧合并为一个数据帧
- 9. 从数据帧列表中调用每个数据帧的特定列
- 10. 从列表中转换数据帧列
- 11. 如何从数据帧列成火花列表
- 12. R导入excel,从列表创建几个数据帧使用循环
- 13. 从列表中生成多个列表
- 14. 从数据帧列
- 15. 从数据帧列
- 16. 总结数据帧的几列
- 17. 如何从数据库表数据生成无序列表?
- 18. 分割一个数据帧分成几个dataframes
- 19. R:如何生成填补了一个数据帧的列SQUENCE
- 20. 使用循环从数据帧列表中删除数据帧
- 21. 从数据列表合并数据帧帧
- 22. 在嵌套数据帧列上使用mutate_at()生成多个未发生列
- 23. R,从每个数据帧行创建几个随机数
- 24. sapply对数据帧的列使用从另一个数据帧
- 25. 从提取的分组数据中生成新的数据帧
- 26. 从Python中的数据帧列表中导入2个或更多数据帧
- 27. 合并具有几个不同列的两个数据帧
- 28. 在两个公共列上合并几个数据帧
- 29. 如何生成一个数据帧,该数据帧根据另一个的数量重复一个数据?
- 30. 从数据库检索的数据生成列表视图
你可以像'l = [data1,data2,...]一样将它们加入列表中,然后遍历该列表,你可以绘制每个数据框 –
@AntonProtopopov谢谢,或许更好的问题是如何创建列表具有大量数据框时的变量? – Sepehr