【发布时间】:2018-01-20 22:32:17
【问题描述】:
我有以下数据框:
Date Price
Equity(231 [IBM]) 2016-05-10 00:00:00+00:00 150.04
Equity(2574 [TSLA]) 2016-04-29 00:00:00+00:00 248.43
我尝试使用以下方法迭代数据框:
for row in df.itertuples():
print("symbol :\n",row[0])
print("Date :\n",row[1])
print("Price :\n",row[2])
输出:
symbol : Equity(231 [IBM])
Date : 2016-05-10 00:00:00+00:00
Price : 150.04
symbol : Equity(2574 [TSLA])
Date : 2016-04-29 00:00:00+00:00
Price : 248.43
我不想要上面的输出,因为它迭代了 IBM 和 TSLA 而不是单独的 IBM。 当我们迭代时,我想要以下输出:
Out:
symbol : Equity(231 [IBM])
Date : 2016-05-10 00:00:00+00:00
Price : 150.04
在下一次迭代中:
Out:
symbol : Equity(2574 [TSLA])
Date : 2016-04-29 00:00:00+00:00
Price : 248.43
如果您仍然觉得难以理解,请随时要求更多说明。
【问题讨论】:
-
您使用了一个 for 循环,它将遍历所有 df.rows(可用作元组)直到最后一行然后结束(我的意思是退出循环)。首先检查您是否真的需要 for 循环或任何类型的对数据帧的条件访问。
标签: python loops pandas numpy dataframe