只能将大小为1的数组转换为Python s

2024-04-25 08:53:47 发布

您现在位置:Python中文网/ 问答频道 /正文

几天来,我一直在努力解决我的错误,但找不到解决办法。 基本上,我的“profitothisTrade”变量显然返回一个数组,尽管当我打印它时,我只看到一个浮点,我试图将它与一个浮点进行比较。我试着转换类型,换了些东西,但都没用。 任何帮助都将不胜感激。 谢谢

我试着改变“profitothistrade”变量的类型。我只尝试获取第一个项,因为它显然是一个数组,但无法将其转换为float。在

moneyManagedDF = pd.DataFrame()
currentDate = longsUnderEMA10ROC5.index.strftime("%D")
longsUnderEMA10ROC5["Profit/Loss"] = longsUnderEMA10ROC5["Profit/Loss"].astype(float)
stopForTheDay = 0
stopForThisDay = ""
profitOfThisTrade = 0.0
dailyTarget = 46.0
dailyStop = -124.26
todaysProfit = 0.0
for x in longsUnderEMA10ROC5.index.values:
    if stopForTheDay == 1:
        if stopForThisDay == x:
            break
        elif stopForThisDay != x:
            stopForTheDay = 0
            todaysProfit = 0
    if stopForTheDay == 0:
        moneyManagedDF = moneyManagedDF.append(longsUnderEMA10ROC5.loc[x])
        profitOfThisTrade = longsUnderEMA10ROC5["Profit/Loss"].loc[x].item()
        todaysProfit = todaysProfit + profitOfThisTrade - 3.92
    if (todaysProfit >= dailyTarget) or (todaysProfit <= dailyStop):
        stopForTheDay = 1
        stopForThisDay = x

我想比较一下这次交易的利润和今天的利润,但它们的类型不一样。 这些错误是根据我改变类型的时候得到的。 -只能将大小为1的数组转换为Python标量 -序列的真值是模棱两可的。使用a.empty、a.bool()、a.item()、a.any()或a.all()。在


Tags: 类型indexif错误数组float浮点profit

热门问题