python - 如何检查数据帧的第 i 行是否等于一个值?
问题描述
我无法解决这个问题。
for i in range(0,len(df1.columns)):
if df1.iloc[i:].values ==1:
print ('Buy')
order= True
elif df1.iloc[i:] == -1:
print ('Sell')
order= True
else:
print ('Do nothing')
time.sleep(30)
if a==5:
break
我有一个dataframe
df1
包含值-1、0和1的值。所以基本上我正在尝试打印例如“购买”如果值1出现在数据框中(此代码是循环的结束,在此之前我正在设置每 30 秒一个新值df
)
恢复:
每 30 秒为 df 设置一个新值(已经这样做了)检查这个值是 -1,0 还是 1 根据新值每 30 秒打印一次“购买”“出售”或“什么都不做”,定时睡眠,然后设置一个新的df
等的价值
当我运行上面的代码时,它给了我:ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
.
解决方案
我认为因为您尝试将列表与单个值进行比较,所以您收到此错误消息
我们不清楚您的数据框 df1 形状,所以我在这里猜测,尝试更改
if df1.iloc[i:].values ==1:
至
if df1.iloc[i] ==1:
也改变
elif df1.iloc[i:] == -1:
至
elif df1.iloc[i] == -1:
推荐阅读
- python - python - 如何使用openpyxl库使用python将列从一个excel表复制到另一个?
- android - 从 ADB 发送意图到运行时注册的 BroadcastReceiver
- .net - 按钮在 .NET Web 窗体上启用后不执行任何操作
- arrays - Julia 条件赋值基于 | (或)在多维数组中
- python-3.x - 无法在 Windows 10 中使用 pycharms 通过 pip install uwsgi 安装 uwsgi
- scala - Spark scala在具有不同名称的列上连接两个数据框
- algorithm - 精确比较非常大整数(10 亿级)的两个指数的算法
- python - 检查用户是否升级
- python - Python在找到关键字后提取句子
- java - 索引超出范围,IF 代码行出错