如何利用pandas对现有的excel(非CSV)进行追加数据

准备工具

Python,pandas,office

这次我们就说一个函数 df.append()

其实append()函数功能很强大。我们看一下append()函数的语法结构。
在这里插入图片描述

df.append(other, ignore_index=False,verify_integrity=False, sort=False)

简单的说一下里面的意思:

  • other 是它要追加的其他 DataFrame 或者类似序列内容
  • ignore_index 如果为 True 则重新进行自然索引
  • verify_integrity 如果为 True 则遇到重复索引内容时报错
  • sort 是否排序

好了我们介绍一下我们的数据源

在这里插入图片描述在这里插入图片描述

首先我们说一下append()这个函数的特点,这个函数的特点是返回一个新的对象,他不会在原对象上进行操作,这点还是跟一些函数有区别的。我会用一个实际的例子演示。
从下面的例子里面可以显然的看出data1,没有被改变。
在这里插入图片描述
好了。我们直接呼应我们的主题,追加新的数据。然后再慢慢的介绍函数的特性。

  • 因为append()函数只 支持追加Series 或 DataFrame或者对应字典。
  • DataFrame就不多说了。表与表的拼接
  • Series其实跟DataFrame没太大区别,不过还是要演示一下。
s1 = pd.Series(['A-11月6日', 'B-11月6日', 'C-11月6日', 'D-11月6日'],
              index=['A', 'B', 'C', 'D'])
   #创建一个Series

在这里插入图片描述
模样如上图所示:
然后向data1中追加数据

data1.append(s1,ignore_index=True)
#注意我们这里是需要对ignore_index进行声明的。
#因为加入的Series其实是一行数据,需要对索引进行排列,不然它不知道放在哪里。
#不知道我这个解是对不对,不对的话,请大佬留言,我会学习改正。

在这里插入图片描述
这样我们就成功的添加上了数据。

  • 第三个字典,也是我们日常处理数据中,最最最经常用到的追加数据的数据结构。这里我们着重的说一下。
    *创建一个字典,字典的格式要与data1中的格式呼应。
    kay对应的列表名字。value对应的就是你想要追加的内容。直接上代码。
    在这里插入图片描述
dicts = [{'A': '11月1日', 'B': '11月2日', 'C': '11月3日', 'D': '11月4日'},
        {'A': '11月5日', 'B': '11月6日', 'C': '11月7日', 'D': '11月8日'}]
   # 注意这个字典的格式是,列表嵌套字典,最外层为一个列表,内层元素是字典
data1.append(dicts, ignore_index=True)

这样我们用字典中的数据 对data1进行追加。效果如下
在这里插入图片描述
我们可以看到,直接对每一列数据进行了追加,不过大家要记住的一点是,append()函数后是一个新的对象,我们需要用新的变量去接收这个函数。这个append()操作不会对原有的数据进行任何改变。

  • 追加内容,字典格式的拓展。
    我们可以看到上面的追加格式。是kay:value,形式出现,Kay都是与列名对应的。我们如果创建一个不存在的kay,对不存在的kay,加上value的话会怎样呢。我演示给大家看,
    在这里插入图片描述

在这里插入图片描述

哈哈,我们直接得到了一个新列。X列。 而且严格的与新添加的数据对齐了。

dicts = [{'A': '11月1日', 'B': '11月2日', 'C': '11月3日', 'D': '11月4日','X': '新增X列第一行'}, 
        {'A': '11月5日', 'B': '11月6日', 'C': '11月7日', 'D': '11月8日','X': '新增X列第二行'}] #增加了新Kay,X
   # 注意这个字典的格式是,列表嵌套字典,最外层为一个列表,内层元素是字典
data1.append(dicts, ignore_index=True)

善用这些技巧能让大家完全的再日常办公中,让报表完全自动化起来。
希望大家疫情之后,升职加薪,财富自由

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值