首页 > 解决方案 > 通过提供 stingpath 在函数中调用 pandas 数据框

问题描述

我想要一个方法通过给它一个 stringpath 作为参数来返回一个 pandas DataFrame,它由构造函数参数给出。

这是我的代码:

class TestClass:
    def __init__(self,file):
        self.file = file
        print(self.loadfile(self.file))
        print("------------------------------------")
        print("DESCRIPTION: ", self.loadfile(self.file))


    def loadfile(self,file):
        df = pd.read_csv(self.file)
        return df

        return pd.DataFrame(columns=[file])

    def descript(self,file):

        df = pd.read_csv(self.file)
        return df.descript

它给了我一些东西,但这看起来不像你输入的熊猫数据框

df1 = pd.read_csv("blabla.csv")

那么错误在哪里呢?

提前致谢!

标签: pythonpandasdataframe

解决方案


您不能返回 DataFrame,因为__init__您需要loadfile在初始化类对象后调用该函数

class TestClass(object):

    def __init__(self, file):
        self.file = file

    def loadfile(self):
        df = pd.read_csv(self.file)
        return df

TestClass(r'path\to\file.csv').loadfile()

推荐阅读