【发布时间】:2016-05-10 00:13:12
【问题描述】:
我在处理 pandas/numpy 中的循环时遇到了麻烦。以这段代码为例
import pandas as pd
eurusd = pd.read_csv('EURUSD.csv',index_col='Date',parse_dates=True,usecols=['Date','High','Low','Open','Close'])
gbpusd = pd.read_csv('GBPUSD.csv',index_col='Date',parse_dates=True,usecols=['Date','High','Low','Open','Close'])
audusd = pd.read_csv('AUDUSD.csv',index_col='Date',parse_dates=True,usecols=['Date','High','Low','Open','Close'])
eurusd['MovingAvg'] = pd.rolling_mean(eurusd.Close,100)
gbpusd['MovingAvg'] = pd.rolling_mean(gbpusd.Close,100)
audusd['MovingAvg'] = pd.rolling_mean(audusd.Close,100)
我将如何实现显示
的逻辑if the eurusd.Close is less than the eurusd.MovingAvg
AND if gbpusd.Close is less than the gbpusd.MovingAvg
AND if audusd.Close is GREATER than the audusd.MovingAvg
then set some condition to TRUE
【问题讨论】:
-
if eurusd.Close < eurusd.MovingAvg and gbpusd.Close < gbpusd.MovingAvg and audusd.Close > audusd.MovingAvg -
返回 ValueError: Series 的真值是不明确的。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
-
MovingAvg是一组值,您必须选择一个进行比较
标签: python arrays numpy pandas