最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

dataframe - colab panda transformation issue - Stack Overflow

programmeradmin1浏览0评论

I tried to do performa some transformation with dataset from yfinance in Colab. But the transformation kept failing with following error: ValueError: Cannot set a DataFrame with multiple columns to the single column target_5

One confusing part is, this code works perfect in local jupyter environment, but Colab seems to differ in handling the shift()function...?

stock_symbol = "QQQ"
today=datetime.today().strftime('%Y-%m-%d')
# Download training data (2020 - 2024)
train_start = "2018-01-01"
train_end = "2024-09-01"
train_data = yf.download(stock_symbol, start=train_start, end=train_end, interval="1d")

# Download test data (2025)
test_start = "2024-09-01"  # Ensure at least 50 prior days for rolling windows
test_end = datetime.today().strftime("%Y-%m-%d")
test_data = yf.download(stock_symbol, start=test_start, end=test_end, interval="1d")

for data in [train_data, test_data]:
    data["daily_change_%"] = data["Close"].pct_change() * 100
    data["curday_change_%"] = (data["Close"] - data["Open"]) / data["Open"] * 100
    data["shift_5"]=data["Close"].shift(-5)
    data["shift_10"]=data["Close"].shift(-10)
    data["shift_20"]=data["Close"].shift(-20)
    data["target_5"] = ((data["shift_5"] - data["Close"]) / data["Close"]) * 100
    data["target_10"] = ((data["shift_10"] - data["Close"]) / data["Close"]) * 100
    data["target_20"] = ((data["shift_20"] - data["Close"]) / data["Close"]) * 100
    
    data["target"]=(data["target_20"]>0).astype(int)

i check the shift columns, they are series...

发布评论

评论列表(0)

  1. 暂无评论