python - 使用变量迭代熊猫中的列
问题描述
我有一个看起来像这样的数据框:
import pandas as pd
f = {'business':['FX','IR','IR'],'level':['A','A','L'],'amt':[1,2,3]}
df1 = pd.DataFrame(data=f)
df1
我有循环通过创建变量来迭代数据框的列:
for business_v,level_v,amt in list(zip(*[df1[col]for col in df1])):
print (business_v,levelv,amt)
除了定义三个变量business_v
,level_v
和之外amt
,有没有办法根据数据框中的列数自动创建变量df1
?我的数据框大小发生变化,我想根据数据框的大小创建变量。
解决方案
您可以考虑使用索引,而不是创建任意数量的变量,如下所示:
for idx in range(df1.shape[0]):
print ([df1.iloc[i][col] for col in df1.columns()])
如果您只想在后续代码中使用列的子集,则可以使用自定义列集而不是调用 df1.columns()。
推荐阅读
- java - 如何使用谷歌翻译获取多个单词的翻译
- c++ - 我无法停留在循环中,也应该添加总数,直到用户使用输入 N || 退出循环 n
- python-3.x - 如何在没有类型转换的情况下在 python 中获取输入,以使实际输出不会被覆盖?
- google-app-engine - 谷歌负载均衡器简单的 url 重定向
- python - 如何使用一行代码翻转姓氏和名字?
- pandas - 熊猫计算最佳和最差滚动平均回报
- google-cloud-platform - Google API python将对象转换为json
- sqlite - SQLite 在子查询或 CTE 中多次重新计算 random()
- python - 是否有一个 Python 类型的类表示“集合、列表或元组”之类的东西?
- javascript - 如何在 HTML 中操作字符串?