如何解决如何使用 Pandas 处理从我自己创建的类加载的数据?
我在使用 Pandas 时遇到了一些小问题。问题是我创建了一个文件来存储类以从 .csv 文件读取和清理数据。我导入我自己的库来加载数据,然后我想将 Pandas 数据框用于其他操作。但不知为何,我做不到。
import pandas as pd
class Load_Data:
def __init__(self,filename):
self.__filename = filename
def load(self):
df = pd.read_csv(self.__filename)
del df["Remarks"]
df = df.dropna()
return df
在另一个文件中,我试图导入这个自创建的库进行数据处理步骤,然后尝试使用 Pandas DataFrame 处理它。
from Load_Data import Load_Data
import pandas as pd
test_df = Load_Data("Final_file.csv")
test_df.load()
从我的文件打印内容表没有问题。但是当我尝试将它(test_df)用作 Pandas 数据框时,例如,我想对某些属性进行分组
test_df.groupby(['width','length])
它最终显示:
'Load_Data' 对象没有属性 'groupby'
这意味着如果我想使用 groupby 函数,我必须在我自己的类中自己编写它。但我不想那样做。我只想将我的类转换为 Pandas DataFrame 并直接使用它们的包进行一些复杂的操作。
如果您有任何帮助,我将不胜感激
解决方法
您正在使用类,就好像它是一个函数。在 load
方法中推送 return 语句
import pandas as pd
class Load_Data:
def __init__(self,filename):
self.__filename = filename
def load(self):
df = pd.read_csv(self.__filename)
del df["Remarks"]
df = df.dropna()
return df # this change
用法:
test_df = Load_Data("Final_file.csv").load() #this change
# or
load_data = Load_Data("Final_file.csv")
test_df = load_data.load()
load 返回一个 DataFrame 而不是 Load_Data 实例。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。