首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过函数使用您操作过的数据框(python)

如何通过函数使用您操作过的数据框(python)
EN

Stack Overflow用户
提问于 2018-07-13 04:38:23
回答 1查看 20关注 0票数 0

我正在写Jupyter Notebook。我有多个数据帧,其中我正在比较它们之间的数据。在比较这些数据帧之间的数据之前,我需要清理一些字符串。我需要删除双引号("),并且需要删除空单元格中的NaN值。

为了对一个名为df1970的数据帧执行此操作,我创建了两个函数:

代码语言:javascript
复制
df1970['Title'] = pd.Series(df1970['Title']).str.replace('"', '')
df1970= df1970.replace(np.nan, "", regex=True)

当我提到df1970下游时,它给出了清理后的数据帧。但是,我有一个标题为df1966的数据集,我想删除双引号并替换NaN,而不需要再次键入上面的整个代码。所以我创建了一个函数:

代码语言:javascript
复制
def cleanupdataset(df):
    df['Title'] = pd.Series(df['Title']).str.replace('"','')
    df= df.replace(np.nan, "", regex=True)
    return df

然后,当我调用时:

代码语言:javascript
复制
cleanupdataset(df1966)

...it给了我一个很好的,干净的1966年的数据集,我想要在下游使用。

后面的函数调用USETHISDF作为要操作的数据帧的标题。所以这一次我想使用我漂亮的新的干净的df1966,所以我重新定义了它:

代码语言:javascript
复制
 cleanupdataset(df1966)

 USETHISDF = df1966

但是当我调用它来检查它是否被清洗的时候...

代码语言:javascript
复制
 USETHISDF

它使用的是df1966的非清理版本。我做错了什么?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51314075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档