尝试在python中构建数据帧时出现语法错误

2024-07-02 11:53:15 发布

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

我试图在Python3中创建一个函数,该函数从csv文件构建数据帧。然而,当我调用

y = (data_df["Status"].replace("underperform",0).replace("outperform",1).values.tolist())

这行代码没有运行,因为我从未实际调用过该函数。这是我所有的代码

def Build_Data_Set(features = ["DE Ratio","Trailing P/E"]):
    data_df = pd.read_csv("key_stats.csv") #created in other file

    X = np.array(data_df[features].values#.tolist())

    y = (data_df["Status"].replace("underperform",0).replace("outperform",1).values.tolist())

    return X,y

我应该如何着手修复此错误


Tags: 文件csv数据函数代码dfdatastatus
2条回答

您可以简单地执行以下操作:

def Build_Data_Set(features = ["DE Ratio","Trailing P/E"]):
    data_df = pd.read_csv("key_stats.csv") #created in other file

    X = data_df[features].values # already returns an array

    y = data_df["Status"].replace({"underperform": 0, "outperform":1}).values

    return X,y

df = Build_Data_Set()

您的X = np.array(data_df[features].values#.tolist())中缺少一个右括号-它在那里,但在代码中用#符号注释掉了它

您的python解释器不知道您实际上想在那里结束这一行,并继续搜索右括号。在找到一个之前,它会在下一行的赋值上绊倒,这是非法的,并且会导致语法错误

相关问题 更多 >