首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python技术指标的Excel xlwing数据输入

Python技术指标的Excel xlwing数据输入
EN

Stack Overflow用户
提问于 2017-04-04 18:16:09
回答 1查看 141关注 0票数 1

我正在尝试使用xlwing复制一个简单的技术分析指标。但是,列表/数据似乎无法读取Excel值。下面是代码

代码语言:javascript
复制
import pandas as pd
import datetime as dt
import numpy as np

@xw.func
def EMA(df, n):  
    EMA = pd.Series(pd.ewma(df['Close'], span = n, min_periods = n - 1), name = 'EMA_' + str(n))  
    df = df.join(EMA)  
    return df

当我输入excel数据列表: EMA = ({1,2,3,4,5},5},TypeError:列表索引必须是整数,而不是str EMA =pd.Series(pd.ewma(df‘’Close‘,span = n,min_periods =n- 1),name = 'EMA_’+ str(n))

(专家)非常感谢您的帮助!谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-04-04 18:58:42

EMA()需要一个EMA和一个标量n,并且它在源DataFrame中的单独列中返回DataFrame。您正在传递一个简单的值列表,这是不应该工作的。

构造DataFrame并将值分配给Close列:

代码语言:javascript
复制
v = range(100) # use your list of values instead
df = pd.DataFrame(v, columns=['Close'])

使用此DataFrame调用EMA():

代码语言:javascript
复制
EMA(df, 5)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43204365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档