pandas如何灵活增加新的空字段

 更新时间:2023年08月15日 09:29:24   作者:距离&  
这篇文章主要介绍了pandas如何灵活增加新的空字段问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

pandas灵活增加新的空字段

先说需求

从mongodb中读取数据的某些字段(如A,B,C,D),如果数据没有某个字段(如‘D’字段),就增加该字段且值为空

解决方法

import pandas as pd
import numpy as np
a=np.array([[1,2,3],[4,5,6],[7,8,9]])
df1=pd.DataFrame(a,index=['row0','row1','row2'],columns=list('ABC'))
df1

df1结果:

df1的结果

创建空的且有指定字段的dataframe

df2 = pd.DataFrame(columns=['A','B','C','D'])

再通过pd.concat方法连接

pd.concat([df2,df1])

最后的结果如下:

Python pandas数据清洗,按条件赋值空字段

Python pandas按条件赋值空字段

找到空值,并查看空值的有关规律

旅游数据中节省字段部分为空,考虑使用目的地的均值赋值给对应的空值;有北京到西安的旅程的节省为空,过程中需要:

1、找到节省字段为空的行列:

import numpy as np
import pandas as pd
data[data['节省'].isnull()]

2、提取其中的目的地:

data.loc[data['节省'].isnull(),['目的地']]

3、各个目的地及出发地的均值:

round(data.groupby(['目的地','出发地'])['节省'].mean())

使用fillna函数解决问题:

1、建立一个新的DataFrame用以装入更新后数据

2、获得目的地情况

3、赋值目的地均值到目的地空值

4、将处理后数据丢进新的DataFrame

5、将2-4步骤进行循环

datafillna = pd.DataFrame()
place = data.目的地.unique()
for pla in place:
    t = data.目的地 == pla
    print(t)
    a = data[t].fillna(data[t].mean())
    print(a)
    datafillna = datafillna.append(a)
    break

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python模块之paramiko实例代码

    python模块之paramiko实例代码

    这篇文章主要介绍了python模块之paramiko,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 天翼开放平台免费短信验证码接口使用实例

    天翼开放平台免费短信验证码接口使用实例

    天翼开放平台提供了一个免费的短信验证码API,下面看看使用方法吧,我们用python开发接口
    2013-12-12
  • python使用response.read()接收json数据的实例

    python使用response.read()接收json数据的实例

    今天小编就为大家分享一篇python使用response.read()接收json数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python调用olmOCR大模型实现提取复杂PDF文件内容

    Python调用olmOCR大模型实现提取复杂PDF文件内容

    olmocr是由Allen人工智能研究所(AI2)开发的一个开源工具包,旨在高效地将PDF和其他文档转换为结构化的纯文本,同时保持自然阅读顺序,下面我们来看看如何使用olmOCR大模型实现提取复杂PDF文件内容吧
    2025-03-03
  • Python中PDF转Word的多种实现方法

    Python中PDF转Word的多种实现方法

    在日常办公和数据处理中,经常需要将PDF文档转换为Word文档,以便进行编辑、修改或格式调整,Python作为一种强大的编程语言,提供了多种库和工具来实现这一功能,以下是对Python中PDF转Word技术的详细介绍,需要的朋友可以参考下
    2025-01-01
  • django自动添加接口文档的实现

    django自动添加接口文档的实现

    本文详细介绍了使用Django和drf-yasg生成API接口文档的步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • 对于Python装饰器使用的一些建议

    对于Python装饰器使用的一些建议

    这篇文章主要介绍了对于Python装饰器使用的一些建议,装饰器是Python学习进阶中的重要知识,需要的朋友可以参考下
    2015-06-06
  • PyCharm代码回滚,恢复历史版本的解决方法

    PyCharm代码回滚,恢复历史版本的解决方法

    今天小编就为大家分享一篇PyCharm代码回滚,恢复历史版本的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python将文本转换成图片输出的方法

    python将文本转换成图片输出的方法

    这篇文章主要介绍了python将文本转换成图片输出的方法,涉及Python操作文本及图片的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • 使用Python实现Mysql数据库相关操作详解

    使用Python实现Mysql数据库相关操作详解

    这篇文章主要介绍了使用Python实现Mysql数据库相关操作详解,pymysql是Python中操作数据库的第三方模块,通过这个模块的相关方法,我们可以连接并且去操作mysql数据库,需要的朋友可以参考下
    2023-08-08

最新评论