python的pandas中如何在dataframe中插入一行或一列数据?

dataframe类型是如何插入一行或一列数据的呢?这个需求在本文中将会进行讨论。相比较ndarray类型的同样的“数据插入”需求,dataframe的实现方式,则不是很好用。本文以一个dataframe类型变量为例,测试插入一行数据或者一列数据的方式方法。测试环境:win10,python@3.11.0,numpy@1.24.2,pandas@1.5.3。

某个位置插入列

因为dataframe的insert(),不走寻常路。

  • 效果就是插入一列数据,并没有axis=这个参数来区分数据流的方向。
  • 并且默认效果就是替换原变量,并不是return
    新变量,并没有个inplace参数进行控制。

测试代码:

import pandas as pd
df = pd.DataFrame({"姓名": ["老许", "虎子"], "重量": ["10", "15"]})
df.insert(1, "种类", ["猫", "狗"])
print(df)

输出:

   姓名 种类  重量
0  老许  猫   10
1  虎子  狗   15

这个dataframe将作为原始数据,参与本文后续的代码实验。
在这里插入图片描述

尾部插入列

这个代码是最简单的,灰常简单。测试代码:

import pandas as pd

df = pd.DataFrame({"姓名": ["老许", "虎子"], "重量": ["10", "15"]})
df["颜色"] = ['黑色', '黄色']
print(df)

输出:

   姓名  重量  颜色
0  老许  10    黑色
1  虎子  15    黄色

在这里插入图片描述

某个位置插入行

下面在第二行(编号1)位置插入两条数据。实际上先对dataframe在编号1位置进行了拆分,然后再在拆分的两部分中间放入了新的数据,最终执行合并操作。

import pandas as pd
df = pd.DataFrame({"姓名": ["老许", "虎子"],"种类": ["猫", "狗"], "重量": ["10", "15"]})
data = pd.DataFrame({
    '姓名': ["老许二代", "二赖子"],
    '种类': ["黑猫", "花狗"],
    '重量': [3, 15]
})
df2 = pd.concat([df.loc[:0], data, df.loc[1:]]).reset_index(drop=True)
print(df2)

输出

      姓名  种类  重量
0     老许   猫   10
1  老许二代  黑猫  3
2    二赖子  花狗  15
3     虎子   狗    15

在这里插入图片描述

尾部插入行

dataframe类型官方,对于插入新的一行数据的需求,就仅仅提供了一个append()操作,可以叠加新数据到尾部。

import pandas as pd
df = pd.DataFrame({"姓名": ["老许", "虎子"],"种类": ["猫", "狗"], "重量": ["10", "15"]})
data = pd.DataFrame({
    '姓名': ["老许二代", "二赖子"],
    '种类': ["黑猫", "花狗"],
    '重量': [3, 15]
})
df3 = df.append(data, ignore_index=True)
print(df3)

输出

      姓名   种类  重量
0     老许   猫    10
1     虎子   狗    15
2  老许二代  黑猫   3
3    二赖子  花狗   15

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/192342.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

人力资源管理后台 === 登陆+主页鉴权

目录 1. 分析登录流程 2. Vuex中用户模块的实现 3.Vue-cli代理解决跨域 4.axios封装 5.环境区分 6. 登录联调 7.主页权限验证-鉴权 1. 分析登录流程 传统思路都是登录校验通过之后,直接调用接口,获取token之后,跳转到主页。 vue-elemen…

【心得】XXE漏洞利用个人笔记

XML中关于DTD类型(内部(SYSTEM)的和外部(PUBLIC)的区别) xxe的利用 XML Entity 实体注入 当程序处理xml文件时,没有禁止对外部实体的处理,容易造成xxe漏洞 危害 主流是任意文件读取 XML 文件 一般表示带有结构的数据 祖父 3个叔父 8个堂弟堂妹 …

App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法

📝 App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法 引言 在iOS应用程序开发过程中,进行App备案并获取公钥及证书SHA-1指纹是至关重要的步骤。本文将介绍如何通过appuploader工具获取iOS云管理式证书 Distribution Managed 公钥…

Django(十一、auth认证模块)

文章目录 一、auth介绍auth认证相关模块及操作扩展auth_user表 一、auth介绍 Django自带一个admin路由,但是需要我们提供管理员账户和密码,如果想要使用admin后台管理,需要先创建表,然后创建管理员账户。 直接执行数据类迁移命令…

二、Lua数据类型

文章目录 一、数据类型nil二、数据类型boolean三、数据类型number四、数据类型String(一)用单引号或双引号:(二)可以包含换行的字符串(三)字符串与数字做数学运算时,优先将字符串转换…

抖音开新店,十个设置,实操满满全是干货

抖店开店的第一天手足无措不知从哪入手?我给大家分享一个新手开店必须完成的十个设置,实操满满全是干货,每一项都很重要!特别是新手一定要认真看,因为这个直接关系到你店铺能否正常经营,跟着我一起来实操一…

C语言线性表的实现(详解)

数据结构之线性表 ​ 线性表的基本概念:线性表是由0个或者多个数据元素的有限序列 ​ 特性是: ​ 1:数据元素之间都是有顺序的 ​ 2:数据元素的个数是有限的, ​ 3:数据元素的类型是相同的 ​ 性质是&…

Java代码生成器,一键在线生成,支持自定义模板

【Java代码生成神器】自动化生成Java实体类、代码、增删改查功能!点击访问 推荐一个自己每天都在用的Java代码生成器!这个网站支持在线生成Java代码,包含完整的Controller\Service\Entity\Dao代码,完整的增删改查功能&#xff01…

给国外客户价格报低了怎么办

前一段时间有一个单子的货发出去了,被朋友提醒才发现自己报错了价格,造成了亏损,而报错价格的原因并不是自己看错了或者是抄错了价格,而是自己的脑子里记错了产品的价格列表。 如果不是朋友善意的提醒,大概我会一直错…

.NET的Dockerfile文件编写要点——以WOL项目为例

本文以 WOL 的.NET 项目为例,介绍了 Dockerfile 的基础知识和编写要点,旨在帮助读者更好地理解和掌握如何为 .NET 应用创建和优化 Dockerfile。 1. 背景 前面我们已经勾选了 Docker 容器化支持,项目已经生成了一个默认的 Dockerfile。但在实…

快速上手Banana Pi BPI-R4 MediaTek MT7988A 开源路由器开发板

基础开发 准备开发 * 准备8G以上TF卡、USB转串口线、Ubuntu系统* 使用 USB 串行电缆(3.3V TTL,波特115200)连接到 BPI-R4 上的调试控制台G接地;RXBPI-R4输入;TXBPI-R4输出* BPI-R4 引导程序和设备选择跳线设置* 例子…

部署Jenkins

一、介绍 Jenkins 、Jenkins概念 Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允…

代码随想录算法训练营第五十天|309. 买卖股票的最佳时机含冷冻期、714. 买卖股票的最佳时机含手续费

LeetCode 309. 买卖股票的最佳时机含冷冻期 题目链接:309. 买卖股票的最佳时机含冷冻期 - 力扣(LeetCode) 所谓的冷冻期,就是卖了股票后的第二天不能买入该股票(股票上的N2,N1是今天卖明天能买),所以影响到…

推荐你一个基于Koin, Ktor Paging等组件的KMM Compose Multiplatform项目

推荐你一个基于Koin, Ktor & Paging等组件的KMM Compose Multiplatform项目 Kotlin Multiplatform Mobile(KMM)已经从一个雄心勃勃的想法发展成为一个稳定而强大的框架,为开发人员提供了在多个平台上无缝共享代码的能力。通过最近的稳定…

肖sir __数据库练习__001

建表语句: create table student ( id int(4),age int(8),sex int(4),name varchar(20), class int(4), math int(4)) DEFAULT charsetutf8; INSERT into student VALUES(1,25,1,‘zhansan’,1833,90); INSERT into student VALUES(2,25,1,‘lisi’,1833,67); INSER…

单片机学习1——点亮一个LED灯

Keil软件编写程序&#xff1a; 特殊功能寄存器声明&#xff1a; #include<reg52.h>sbit LED P1^0;void main() {LED 0;while(1); } 代码说明&#xff1a; sbit 语句是特殊功能位声明。 生成HEX文件&#xff0c;这个文件是下载到单片机里的文件。Options for Target…

三方支付接口成为了电商竞争力的新动力

在当前快速发展的互联网时代&#xff0c;随着电子商务行业的兴起&#xff0c;支付体验已经成为企业获取竞争优势的重要因素。一个快速、安全、便捷的支付环节不仅可以提升用户的体验&#xff0c;还能有效促进交易的完成。在众多支付解决方案中&#xff0c;三方支付接口因其独特…

CMakeList项目构建

CMakeList项目构建 OVERVIEW CMakeList项目构建cmake1.变量定义2.指定源文件路径3.指定头文件路径4.字符串操作5.日志打印6.预定义宏 cmake、makefile都是项目构建工具&#xff0c;通过make命令进行项目构建&#xff0c;大多的IDE都集成了make项目构建&#xff0c;如visual stu…

Java Flight Record 详解

核心概念 Java Flight Record 提供一个低开销的数据收集框架&#xff0c;用于对 Java 应用程序和 HotSpot JVM 进行故障排除。Flight Recorder 记录源自应用程序、JVM和操作系统的事件 Flight Record&#xff0c;顾名思义&#xff0c;相当于飞机黑匣子里保存的飞行记录 事件 …

2023-11-27 LeetCode每日一题(子数组的最小值之和)

2023-11-27每日一题 一、题目编号 907. 子数组的最小值之和二、题目链接 点击跳转到题目位置 三、题目描述 给定一个整数数组 arr&#xff0c;找到 min(b) 的总和&#xff0c;其中 b 的范围为 arr 的每个&#xff08;连续&#xff09;子数组。 由于答案可能很大&#xff…