繁体   English   中英

Python 模块导出 Pandas DataFrame

[英]Python module export Pandas DataFrame

我对 Python 比较陌生,但我对 Python 模块的理解是,模块中定义的任何对象都可以导出,例如,您是否拥有:

# my_module.py
obj1 = 4
obj2 = 8

您可以简单地使用from my_module import obj1, obj2导入这两个对象。

在使用 Pandas 时,代码看起来像这样(不是实际工作代码)是很常见的:

# pandas_module.py
import pandas as pd
df = pd.DataFrame(...)
df = df.drop()
df = df[df.col > 0]

其中同一个对象( df )被重新定义多次。 如果我想导出df我应该如何处理? 我的猜测是,如果我只是from pandas_module import df其他地方的from pandas_module import df ,所有的from pandas_module import df代码将首先运行,我将按预期运行最终的 df,但我不确定这是否是好的做法。 也许最好做一些像final_df = df.copy()和 export final_df这样的事情。 对于不熟悉 Python 的人来说,这似乎更容易理解。

所以我的问题是,处理这种导出多次定义的df情况的正确方法是什么?

就个人而言,我通常会创建一个返回 Dataframe 对象的函数。 如:

# pandas_module.py
import pandas as pd

def clean_data():

    df = pd.DataFrame(...)
    df = df.drop()
    df = df[df.col > 0]

    return df

然后,您可以从主工作流中调用该函数并获得预期的 Dataframe:

from pandas_module.py import clean_data

df = clean_data()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM