首页 > 解决方案 > 通过函数传递 pandas DataFrame 时丢失数据

问题描述

我正在尝试从返回 pandas DataFrame df的 Jupyter Notebook (VSCode) 调用函数,但是我注意到在此过程中丢失了一些df行。我尝试返回df本身和 deepcopy,但都导致丢失行。当我在笔记本内部运行函数中使用的代码时,没有数据丢失,所以我怀疑在通过函数传递df时会出现问题。我应该提到df的原始大小是 50558,当返回时大小下降到 49997(丢失 561 个元素)。

一个非常粗略的代码示例:

在“Reader.py”文件中:

from pathlib import Path
import pandas as pd
import os
import re

def getDF():
    #reading files
    (...)
    #processing data
    (...)

    rows_list = []
    for piece_of_data in data:
        #adding piece_of_data to dictionary dict  
        (...)  

        rows_list.append(dict)

    df = pd.DataFrame(rows_list)
    return df

在 Jupyter 笔记本中:

import pandas as pd
from Reader import getDF

df = getDF()

我知道我可以简单地将函数代码包含在笔记本中并从那里开始,但如果可能的话,我宁愿在创建数据框时不要使用大量代码。

标签: pythonpandasdataframevisual-studio-codejupyter-notebook

解决方案


推荐阅读