【问题标题】:I cannot view the data as I am processing it我在处理数据时无法查看数据
【发布时间】:2021-01-31 00:21:55
【问题描述】:

我使用过滤器功能过滤我想要的标题。然后我想用 show_data 操作查看数据。但是,数据以其原始形式出现。不来过滤。我怎样才能做到这一点? 非常非常非常感谢。

import pandas as pd
import os


class MainData:
    csv_path = os.path.expanduser("~/Desktop/dataset/traffic-crashes- 
    vehicles-1.csv")
    data = pd.read_csv(csv_path)

    def __init__(self):
        self.data = data


    def filter(self):
        self.data = self.data[['MAKE','NUM_PASSENGERS']]
        return self.data


    def show_data(self):
        a = self.data
        return self.data

    MainData().filter()
    MainData().show_data()

【问题讨论】:

  • 你在show_data之前调用过filter方法吗?
  • 我是这样运行的,可惜当我返回self.data时,第一个数据又来了。
  • 先创建对象再使用instance method
  • 这应该会引发错误。这不是你调用这些方法的方式。它至少应该类似于MainData().filter()类定义之后,而不是在其中。
  • self.data =... 创建一个新的实例绑定属性“数据”,但不修改原始类绑定“数据”。然后你扔掉带有属性的实例并创建一个新的。

标签: python python-3.x pandas oop


【解决方案1】:

首先为类创建一个对象。然后使用该对象调用该类的方法:

obj = MainData()
obj.filter()
obj.show_data()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-01
    • 1970-01-01
    相关资源
    最近更新 更多